--啥意思??
select kf,pjbm,cx=sum(cx),tycx=sum(tycx),pjmc=sum(pjmc),mcbm=sum(mcbm),ggxh=sum(ggxh),kcsl=sum(kcsl),cbje=sum(cbje),cbdj=sum(cbdj) from part_actual
group by
kf,pjbm,cx
select kf,pjbm,cx=sum(cx),tycx=sum(tycx),pjmc=sum(pjmc),mcbm=sum(mcbm),ggxh=sum(ggxh),kcsl=sum(kcsl),cbje=sum(cbje),cbdj=sum(cbdj) from part_actual
group by
kf,pjbm,cx
我写成上面的方法,但是列出字段不够,如果再加上就出现了错误。选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句中。
这样select A,B,C,D,E=sum(E)
from 表
group by
A,B,C,D
select A,B,C,D,E=sum(E)
from 表
group by
A,B,C,D
这是您的方法,但是我想如果select A,B,C,D,E=sum(E) from 表 group by A,B,C怎么办呢?
D字段加个聚合函数就可以了。比如Max,Min
select A,B,C,D=max(D),E=sum(E)
from 表
group by
A,B,C
---- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ---------------------------------------- ---------------------------------------- ----------------------------------------
8 02080618(改进型) CJ6800G1C2H 后刹车分泵(左) 2.00 560.00 280.000000
8 0210238019 HH-DD6103HSC 机油表 1.00 190.00 190.000000
8 0211158005 CJ6800G1C2H/YC4110ZQ 高压油泵弹簧上座圈 12.00 144.00 12.000000
8 0211158006 CJ6800G1C2H/YC4110ZQ 高压油泵弹簧下座 16.00 272.00 17.000000
8 0211158007 CJ6800G1C2H/YC4110ZQ 高压油泵储油阀弹簧 20.00 160.00 8.000000(所影响的行数为 5 行)是这样吧,不过,我就是有一点想不明白,如果我想列出表中的所有字段,但却只想利用其中的几个字段group by 怎么办呢?是不是必须得加聚合函数呢?应该是吧!