1、UNION指令的目的是將兩個SQL語句的結果合併起來,可以查看你要的查詢結果。
2、UNION會排出重複的記錄,UNION ALL 不會排出重複的記錄,UNION ALL 比 UNION的速度快很多,建議在相同的情況下用 UNOIN ALL。
3、UNION、UNION ALL 的用法中,兩個SELECT 語句的字段類型匹配,而且字段個數相同。
4、舉例分析:
新建兩個表T_WBJ_TABLE_A,T_WBJ_TABLE_B,並插入如下數據:
T_WBJ_TABLE_A T_WBJ_TABLE_B
A_ID B_ID A_ID B_ID
1 A 2 A
2 A 3 A
3 B 4 A
4 B
要求查詢兩表中B_ID相等且B_ID='A'的記錄(比較一下三者差異):
a、select * from T_WBJ_TABLE_A A,T_WBJ_TABLE_B where A.B_ID=B.B_ID and B.B_ID='A';
b、 select A.A_ID,A.B_ID from T_WBJ_TABLE_A A where A.B_ID='A' union all select B.A_ID,B.B_ID from T_WBJ_TABLE_B B where B.B_ID='A';
c、 select A.A_ID,A.B_ID from T_WBJ_TABLE_A A where A.B_ID='A' unionselect B.A_ID,B.B_ID from T_WBJ_TABLE_B B where B.B_ID='A';