为了账号安全,请及时绑定邮箱和手机立即绑定

用union all 连接有什么用呢,出来的结果字段名都不一样

select a.user_name,a.over,b.over from user1 a left join user2 b on a.user_name=b.user_name

union all

select b.user_name,b.over,a.over from user1 a right join user2 b on a.user_name=b.user_name where a.user_name is null;

孙悟空                                   斗战胜佛                                 成佛

唐僧                                     旃檀功德佛                               

沙僧                                     金身罗汉                                 

猪八戒                                   净坛使者                                 

鹏魔王                                   被降服                                   

狮驼王                                   被降服                                   

蛟魔王                                   被降服                                   

牛魔王                                   被降服                                   


如上,重复值去掉了,前四个是left join 的查询,后四个是right join 的查询(去掉了重复值)

问题是 左连接: a.user_name,a.over,b.over 右连接:b.user_name,b.over,a.over 

这些同一列的数据都不是一个表的,查出来有什么用啊?

正在回答

1 回答

哈哈哈,你问的问题就是答案。他的作用就是获取所有数据在一列上面,然后遍历。假如你想要所有数据,然后不在同一列,你取出来 就要进行数据合并 然后遍历 或者两列分开遍历。

0 回复 有任何疑惑可以回复我~
#1

180416 提问者

嗯,如果想要的字段出现在同一列,可以修改select_list
2019-01-09 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

用union all 连接有什么用呢,出来的结果字段名都不一样

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信