首页 新闻 会员 周边 捐助

mysql连表查询问题

1
悬赏园豆:10 [已解决问题] 解决于 2019-08-14 17:37

  mysql连表查询问题,怎么写sql语句

za_szybko的主页 za_szybko | 初学一级 | 园豆:166
提问于:2019-08-14 16:57
< >
分享
最佳答案
2
select t.id, sum(t.num)
from
(
(select id, num from a)
UNION ALL
(select id, num from b)
)t
group by t.id

大概是这样,我没有测试过。

收获园豆:10
会长 | 专家六级 |园豆:12463 | 2019-08-14 17:29
其他回答(1)
0

select id,sum(num) from (select * from a union select * from b )as c group by id

小小咸鱼YwY | 园豆:3312 (老鸟四级) | 2019-08-14 17:50

需要用  union all

支持(0) 反对(0) za_szybko | 园豆:166 (初学一级) | 2019-08-14 21:47

@za_szybko: 我试过了,没必要

支持(0) 反对(0) 小小咸鱼YwY | 园豆:3312 (老鸟四级) | 2019-08-14 21:48

@za_szybko: 字段名一样没必要用all

支持(0) 反对(0) 小小咸鱼YwY | 园豆:3312 (老鸟四级) | 2019-08-14 21:50

@小小咸鱼YwY: c 那一列两个表完全一样,会合并成一条数据,最后结果c值不会是30会是15

支持(0) 反对(0) za_szybko | 园豆:166 (初学一级) | 2019-08-14 22:21

@za_szybko: 对哦,我翻了下我记得笔记,是这样的我记错了
union 只能用于字段数量相同的两个表 会自动去除重复的记录

union all 则保留所有记录

支持(0) 反对(0) 小小咸鱼YwY | 园豆:3312 (老鸟四级) | 2019-08-14 22:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册