首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于GROUP BY 的用法?解决方法

2012-01-16 
关于GROUP BY 的用法?数据:币种科目客户号金额001002003100000200200320000030020013000我想显示上述四个

关于GROUP BY 的用法?
数据:
币种   科目     客户号   金额
001       002         003     1000
002       002         003     2000
003       002         001     3000
我想显示上述四个字段,输出结果按客户号汇总金额,但用GROUP   BY   客户号时出错,系统提示在GROUP   LIST   中要加前三个字段,这样就达不到只显示一行汇总客户的数据,如何才能实现要求呢?

[解决办法]
楼主列出的数据是原数据还是你需要的数据阿?
如果只按客户号汇总
那么第一二条数据汇总完以后的币种你想要显示哪个呢?
[解决办法]
select c 客户号,max(d) 客户名称,sum(e) 金额 from tb group by c
[解决办法]
行是 行阿

可以你的币种 不一样

这样直接把金额加起来 正确吗!!
[解决办法]
对不起问题说的不是很清楚,分几种情况吧:
如果只要根据客户号分组,则提取的字段就没必要要有币种,和科目了。所以可以执行
select 客户号,min(客户名称) as 客户名称,sum(金额) as 金额 from 表 group by 客户号
如果真要科目号和币种的话,可以和 客户名称这个字段一样,用max,或者min函数

不过个人建议你还是考虑一下你的分组,总觉得这样分组不合适。

热点排行