Mysql 中合并查询结果集

来源:互联网 发布:淘宝女装品牌推荐 编辑:程序博客网 时间:2024/05/22 12:47

表1的结构为

PK  |  username

1 | 张三

2 | 李四

3 | 王五

表2的结构为

PK | user_cn_name| user_en_name

1 |  赵四 | Jack

2 | 钱五 | Rose

3 | 李四 | Peter

4 | 马克 | Mark

要求得到两个表的所有名字,包括中文名和英文名(不去重)

sql :

SELECT username username FROM table1 UNION ALL SELECT user_cn_name username FROM table2 UNION ALL SELECT user_en_name username FROM table2
结果

username

张三

李四

王五

赵四

钱五

李四

马克

Jack

Rose

Peter

Mark

PS: UNION ALL 表示将两个结果集组合起来,其结果并不会去掉重复的数据 ,如果要得到去重后的结果集,将关键字“UNION ALL”换成“UNION”

即可,要注意的是使用UNION ALL合并结果集时应确保两个结果集的列数一样,并且类型也一样,否则会报错


0 0
原创粉丝点击