注册 登录
编程论坛 SQL Server论坛

请看看我的编程哪里错啦

钱塘江大潮 发布于 2014-09-26 20:38, 669 次点击
这是我编的程序

select * from 商品表
where 金额>50000
group by 商品名称


点击运行后  消息框出现

消息 8120,级别 16,状态 1,第 2 行
选择列表中的列 '商品表.商品编号' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中。

这是怎么回事
4 回复
#2
tanxiaobin2014-09-28 22:57
你用*就不能group by 某个字段噶。。。话说你都*了还group by 干嘛。。。
#3
tanxiaobin2014-09-28 23:00
我没猜错的话,你是想这样?

select * from 商品表 where 商品名称 in (
select 商品名称 from 商品表
where 金额>50000
group by 商品名称)
#4
魑魅魍魉!2014-09-29 12:37
select中非聚集函数的列,都要在 group by 中!
而你那已用 * ,为何还要group by 。
#5
厨师王德榜2014-10-14 09:49
所以,老师教我们,尽量不要用*,显式的指定字段更好,看来同学你没认真听讲哦。
1