表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合并结果集时应确保两个结果集的列数一样,并且类型也一样,否则会报错