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