SQL 中的一点问题(sum(), group by )

物品表:字段:主键,物品编码,物品名称,库存数量,出库数量select物品主键,sum(库存数量)ass1,sum(出库数量)ass2from物品表groupby物品主键... 物品表:
字段:主键,物品编码,物品名称,库存数量,出库数量
select 物品主键,sum(库存数量) as s1,sum(出库数量) as s2
from 物品表
group by 物品主键

结果:
主键 s1 s2
XXX XX XX

我希望通过还能得到主键XXX的物品编码和物品名称,应该怎么做?
展开
 我来答
bdQuaker
2011-05-12 · TA获得超过253个赞
知道小有建树答主
回答量:551
采纳率:100%
帮助的人:443万
展开全部
建议:
把 物品编码,物品名称 加入到 select 字段列表中,和 group by 字段列表中。
追问
结果:
主键 s1 s2
XXX XX XX
我想在这个基础上,根据主键获得物品名称,编码
如果直接放到group by 后面,那样的结果不是我要的
简单的说:group by 物品主键 能得到两条记录,
group by 物品主键,物品编码,物品名称 却能得到大于两条记录
我要的结果还是那两条记录,只不过在这两条记录上又添加了两个字段
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yjx_xiaoxin
2011-05-12 · TA获得超过6702个赞
知道大有可为答主
回答量:4618
采纳率:50%
帮助的人:2522万
展开全部
在group by这样的sql语句中,select的选择列表中的字段必须出现在组函数或group by子句中。所以你可以
group by 主键,物品编码,物品名称
更多追问追答
追问
结果:
主键 s1 s2
XXX XX XX
我想在这个基础上,根据主键获得物品名称,编码
如果直接放到group by 后面,那样的结果不是我要的
简单的说:group by 物品主键 能得到两条记录,
group by 物品主键,物品编码,物品名称 却能得到大于两条记录
我要的结果还是那两条记录,只不过在这两条记录上又添加了两个字段
追答
select的选择列表中的字段必须出现在组函数或group by子句中,所以你的要求不能实现
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Finish1983
推荐于2017-09-30 · TA获得超过762个赞
知道小有建树答主
回答量:1477
采纳率:100%
帮助的人:397万
展开全部
select 物品主键,物品编码,物品名称,sum(库存数量) as s1,sum(出库数量) as s2
from 物品表
group by 物品主键,物品编码,物品名称
更多追问追答
追问
结果:
主键 s1 s2
XXX XX XX
我想在这个基础上,根据主键获得物品名称,编码
如果直接放到group by 后面,那样的结果不是我要的
简单的说:group by 物品主键 能得到两条记录,
group by 物品主键,物品编码,物品名称 却能得到大于两条记录
我要的结果还是那两条记录,只不过在这两条记录上又添加了两个字段
追答
select A.主键,A.物品编码,A.物品名称,B.S1,B.S2
from 物品表 A,
(
select 物品主键,sum(库存数量) as s1,sum(出库数量) as s2
from 物品表
group by 物品主键
) B

WHERE A.主键= B 物品主键
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式