Mysql 按星期几分组销售
我有一张像这样的桌子Mysql 按星期几分组销售,mysql,sql,Mysql,Sql,我有一张像这样的桌子 sell_price double buy_price double time int(11) 31.5 20.5 1353755931 (2012-11-27) 20 10.5 1353755235 (2012-11-27) 40 30
sell_price double buy_price double time int(11)
31.5 20.5 1353755931 (2012-11-27)
20 10.5 1353755235 (2012-11-27)
40 30 1353752531 (2012-11-26)
50 25 1353751237 (2012-11-26)
40 10 1353745609 (2012-11-25)
我试图对所有值进行分组,以获得一周中每天的销售额,所需的表格应如下所示:
sell_price double buy_price double time int(11)
51.5 30.5 1353755931 (2012-11-27)
90 55 1353755931 (2012-11-26)
40 10 1353755931 (2012-11-25)
我尝试了以下查询,但似乎在分组方面有问题
SELECT sell_price, buy_price, time
FROM sales
GROUP BY DAY(time)
ORDER BY time DESC
上面的查询只返回1行
31.5 20.5 1353755931
实现这一目标的正确方法是什么?如您所见
SELECT DATE(FROM_UNIXTIME(time)) time,
SUM(sell_price),
SUM(buy_price)
FROM tableName
GROUP BY DATE(FROM_UNIXTIME(time))
day(time)
的计算结果为null
,并且,由于您没有为价格指定加成函数,因此您只得到所有内容的第一行
如果你检查的话
假设这些数字是有效的unix时间,您将看到所有数据都在同一天。您得到的输出是什么?是的,这是一个unix时间戳(上表是一个示例)。您如何知道
1353755931
和1353755235
是在2012-11-27保存的?@KuyaJohn看起来是这样的-什么是(YYYY-MM-DD)
你在那里做什么?那么,你想如何汇总分组价格?它没有给出预期的结果。检查此小提琴链接@AnandPhadke是的,问题是所有这些都只是一个日期(2012年11月24日
),在不同的时间,你知道结果是如何产生的吗?@AnandPhadke很抱歉打断你,但我的测试时间戳是虚构的
SELECT
sell_price,
buy_price,
time,
day(time)
FROM
sales
SELECT
sell_price,
buy_price,
date(from_unixtime(time))
FROM
sales;