数据库内容(SQL2000)
leibie1 leibie2 leibie3 xinghao a1 a2 a3
a b c d 10 20 30
a b e f 20 30 10
......
现在我想使用聚合函数
1、
select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) group by leibie2
当然以上语句是错误的。(但是我的想法是把查询的内容放在Leibie2组里,但我又能显示leibie1,leibie3,xinghao的信息)
2、
如果我使用select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) group by leibie2,leibie1,leibie3,xinghao
当然以上语句是没有错语,但是查询的内容不是我想要的。
3、
如果我再使用select max(leibie1),leibie2,max(leibie3),max(xinghao),sum(a1),sum(a2),sum(a3) group by leibie2
当然以上语句是没有错语,也能达到我的意思,但是我使用MAX是没有意思,因为我又不是想查它的最大值。请各位大侠指点,有什么好的办法。
我想要的是select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) group by leibie2
leibie1 leibie2 leibie3 xinghao a1 a2 a3
a b c d 10 20 30
a b e f 20 30 10
......
现在我想使用聚合函数
1、
select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) group by leibie2
当然以上语句是错误的。(但是我的想法是把查询的内容放在Leibie2组里,但我又能显示leibie1,leibie3,xinghao的信息)
2、
如果我使用select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) group by leibie2,leibie1,leibie3,xinghao
当然以上语句是没有错语,但是查询的内容不是我想要的。
3、
如果我再使用select max(leibie1),leibie2,max(leibie3),max(xinghao),sum(a1),sum(a2),sum(a3) group by leibie2
当然以上语句是没有错语,也能达到我的意思,但是我使用MAX是没有意思,因为我又不是想查它的最大值。请各位大侠指点,有什么好的办法。
我想要的是select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) group by leibie2
数据库内容(SQL2000)
leibie1 leibie2 leibie3 xinghao a1 a2 a3
a b c d 10 20 30
a b e f 20 30 10
......
现在我想使用聚合函数
1、
select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) from [表] group by leibie2
当然以上语句是错误的。(但是我的想法是把查询的内容放在Leibie2组里,但我又能显示leibie1,leibie3,xinghao的信息)
2、
如果我使用select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3) from [表] group by leibie2,leibie1,leibie3,xinghao
当然以上语句是没有错语,但是查询的内容不是我想要的。
3、
如果我再使用select max(leibie1),leibie2,max(leibie3),max(xinghao),sum(a1),sum(a2),sum(a3)from [表] group by leibie2
当然以上语句是没有错语,也能达到我的意思,但是我使用MAX是没有意思,因为我又不是想查它的最大值。 请各位大侠指点,有什么好的办法。
我想要的是select leibie1,leibie2,leibie3,xinghao,sum(a1),sum(a2),sum(a3)from [表] group by leibie2
select leibie1,a.leibie2,leibie3,xinghao,a1,s2,s3
from tb a,
(select leibie2,sum(a1) as a1,sum(a2) as s2,sum(a3) as s3 from tb group by leibie2) b
where a.leibie2=b.leibie2