在 SQL 中,UNION 用於合併兩個或更多的查詢結果。這樣你就能把來自不同表格或查詢的數據組合在一起。下面是 UNION 的一些基本知識:
UNION 的條件UNION 不要求列名相同,但結果集中的列名會來自第一個查詢的列名。UNION 的結果UNION 會自動去除重複的行。如果你希望保留所有的行(包括重複的),可以使用 UNION ALL。ORDER BY 來排序。UNION 的語法SELECT column1, column2, ...
FROM table1
WHERE condition
UNION
SELECT column1, column2, ...
FROM table2
WHERE condition;
假設你有兩個表格 employees1 和 employees2,它們都包含 name 和 position 列。你可以這樣使用 UNION:
SELECT name, position
FROM employees1
UNION
SELECT name, position
FROM employees2;
這條 SQL 語句會把 employees1 和 employees2 中的所有行合併在一起,並且去掉重複的行。
如果你想保留所有行,包括重複的,可以這樣寫:
SELECT name, position
FROM employees1
UNION ALL
SELECT name, position
FROM employees2;
這樣就不會去掉重複的行了。
UNION 會去除重複行,這可能會影響性能。如果不需要去重,使用 UNION ALL 可以提高效率。