表一 | ||
id | name | age |
1 | 張三 | 20 |
2 | 李四 | 22 |
3 | 王五 | 25 |
4 | 趙六 | 23 |
5 | 張三 | 22 |
6 | 王強 | 21 |
表二 | |||
id | name | age | brithday |
1 | 張三 | 30 | 1983 |
2 | 楊七 | 22 | 1991 |
3 | 周鵬 | 25 | 1988 |
如果想將兩張表合並,並顯示表二的所有數據,就需要用到union
SELECT t1.id , t1.name , t1.age , null FROM t1 UNION SELECT t2.id , t2.name , t2.age , t2.brithday FROM t2
也可以使用union all 方法,排序的結果不一樣,union all 就是簡單的將兩張表合並,並不進行排序操作。
union 的特點是將表中的一列進行排序,默認是第一列,如果想讓第二列進行排序,代碼修改如下
SELECT t1.id , t1.name n, t1.age , null FROM t1 UNION SELECT t2.id , t2.name n, t2.age , t2.brithday FROM t2 ORDER BY n