PHP中的UNION操作符用于合并两个或多个SELECT语句的结果集。在使用UNION操作符时,每个SELECT语句必须具有相同数量的列,并且对应列的数据类型必须兼容。
UNION操作符默认会去除重复的行,如果需要保留重复行,可以使用UNION ALL关键字。
以下是UNION操作符的语法:
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2
[UNION ALL]
...
其中,column_name(s)是要从每个表中选择的列名,table1、table2等是要查询的表名。
例如,假设有两个表,一个是students表,包含学生的id和name;另一个是scores表,包含学生的id和score。如果要查询所有学生的id、name和score,可以使用以下SQL语句:
SELECT id, name, score FROM students
UNION
SELECT id, name, score FROM scores
这将返回一个结果集,其中包含所有学生的id、name和score,且不会去除重复的行。如果要保留重复行,可以使用UNION ALL关键字,如下所示:
SELECT id, name, score FROM students
UNION ALL
SELECT id, name, score FROM scores