该列没有包含在聚合函数或GROUP BY子句
我就一个表...表sale(intsaleid,varchar[50]productname,intquantity,intpayment,intdate)现在我要查20...
我就一个表...表sale
(int saleid, varchar[50]productname, int quantity, int payment, int date)
现在我要查2010年5月1号到5月31号这段时间中,一共卖了多少个产品,且一共得了多少钱..那不是这样写吗-->>>
sql = "select sum(quantity) as Tquantity, sum(payment) as Tpayment from sale where date between 20100501 and 20100531"
老弹出那个问题,,我做这个查询如果从这个表sale里面无论group by什么,,我得到的结果都不对,,那我就不group by了总可以吧? 可是他就老弹出那个问题,,真是他爷爷的奇了怪了....求高手帮忙
我先说我每卖出一个商品,我就往这个表里面输入,,所以同一天里面,,相同产品输进去几次都是很可能的,,而且我的where date between 20100501 and 20100531是没问题的,因为我在输入数据进这个表的时候都把时间编成那种整数型了,这样好比较..还有如果我要查某一天一共卖了多少个,,我这样写-->>
sql = "select sum(quantity) as Tquantity, sum(payment) as Tpayment from sale where date = '"+20100501+"'"; 这样他也出那个问题,,,我就蛋疼...
额,,其实我有查过资料,,都跟一楼说的是一模一样...其实我在这里是想问,,聚合函数是什么,,具体怎么用?? 展开
(int saleid, varchar[50]productname, int quantity, int payment, int date)
现在我要查2010年5月1号到5月31号这段时间中,一共卖了多少个产品,且一共得了多少钱..那不是这样写吗-->>>
sql = "select sum(quantity) as Tquantity, sum(payment) as Tpayment from sale where date between 20100501 and 20100531"
老弹出那个问题,,我做这个查询如果从这个表sale里面无论group by什么,,我得到的结果都不对,,那我就不group by了总可以吧? 可是他就老弹出那个问题,,真是他爷爷的奇了怪了....求高手帮忙
我先说我每卖出一个商品,我就往这个表里面输入,,所以同一天里面,,相同产品输进去几次都是很可能的,,而且我的where date between 20100501 and 20100531是没问题的,因为我在输入数据进这个表的时候都把时间编成那种整数型了,这样好比较..还有如果我要查某一天一共卖了多少个,,我这样写-->>
sql = "select sum(quantity) as Tquantity, sum(payment) as Tpayment from sale where date = '"+20100501+"'"; 这样他也出那个问题,,,我就蛋疼...
额,,其实我有查过资料,,都跟一楼说的是一模一样...其实我在这里是想问,,聚合函数是什么,,具体怎么用?? 展开
4个回答
展开全部
凡是在group by后面出现的字段,必须同时在select后面出现;凡是在select后面出现的、同时未在聚合函数中出现的字段,必须同时出现在group by后面”,检查sql是否符合上述法则。
正确的写法是
SELECT U_ID,min(House_Addrinfo),
COUNT(U_ID) AS CX
FROM YX_ChuShou
GROUP BY U_ID
ORDER BY CX DESC
或
SELECT U_ID,House_Addrinfo,
COUNT(U_ID) AS CX
FROM YX_ChuShou
GROUP BY U_ID ,House_Addrinfo
ORDER BY CX DESC
正确的写法是
SELECT U_ID,min(House_Addrinfo),
COUNT(U_ID) AS CX
FROM YX_ChuShou
GROUP BY U_ID
ORDER BY CX DESC
或
SELECT U_ID,House_Addrinfo,
COUNT(U_ID) AS CX
FROM YX_ChuShou
GROUP BY U_ID ,House_Addrinfo
ORDER BY CX DESC
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
展开全部
“凡是在group by后面出现的字段,必须同时在select后面出现;凡是在select后面出现的、同时未在聚合函数中出现的字段,必须同时出现在group by后面”,请楼主检查你的sql是否符合上述法则。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select sum(num) as totalnum,sum(mny) as tottalmny
from dj_salesa
where gzrq between '2009-12-16' and '2009-12-17'
totalnum totalmny
------------ -------------------
881 194902.34
(所影响的行数为 1 行)
这样写是没错的呀,就按照一楼说的你检查检查是不是其他语句写错了
还有就是LZ你太抠门了!
from dj_salesa
where gzrq between '2009-12-16' and '2009-12-17'
totalnum totalmny
------------ -------------------
881 194902.34
(所影响的行数为 1 行)
这样写是没错的呀,就按照一楼说的你检查检查是不是其他语句写错了
还有就是LZ你太抠门了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
imei{group: by{eni_jecherf}}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询