SQL这样的查询语句怎么写?

来源:百度知道 编辑:UC知道 时间:2024/05/10 06:14:57
现有张表
表1: A B C D
1 1 2 a -50
2 2 2 b 100
3 3 1 a -50
4 4 6 a -50
5 5 1 c -50
我想得到这样的查询结果
B D
1 2 50(-50+100)
2 6 -50
3 1 -100(-50-50)
也就是当B的值相同时,把D的值相加
这样的查询怎么实现,谢谢先!~
如果从外界得到一个值来判断那结果不是只能返回一条内容,而不是全部的,我是想要返回全部B列有的值的,是不是这样不行??

select distinct(B),sum(D) from 1
group by B

distinct()是取不重复
sum()求和
group by B B字段相同时求和

一定要用到自联接
不过你说的不太清楚啊

都是一个字段内的怎么判断啊?
除非能接收到个值,然后再在B里面判断和接收到的值相等的,再把D相加