我有一个包含以下信息聚合函数没有结果
date sales
2011-02-13 1
2011-02-13 3
2011-02-13 2
2011-02-14 1
我试图让每天avarage销售的表。这里是我如何获得信息
SELECT * FROM tbl WHERE date BETWEEN MAX(date) AND MIN(date)
问题是,mysql没有返回任何结果。哪里不对 ?
我有一个包含以下信息聚合函数没有结果
date sales
2011-02-13 1
2011-02-13 3
2011-02-13 2
2011-02-14 1
我试图让每天avarage销售的表。这里是我如何获得信息
SELECT * FROM tbl WHERE date BETWEEN MAX(date) AND MIN(date)
问题是,mysql没有返回任何结果。哪里不对 ?
尝试倒车MIN()
和MAX()
?
SELECT * FROM tbl WHERE date BETWEEN MIN(date) AND MAX(date)
从文档,其值必须为> =分钟(第一表达式)和< = MAX(第二个表达式):
http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html#operator_between
我这样做,但没有结果 – user1049508
我想SELECT * FROM TBL WHERE日期> = MIN(日期)和日期<= MIN(日期) 还是没有结果 – user1049508
你的意思是日期<= MAX(日期)吧? – JohnD
不要完全知道你以后有什么聚合但是,如果其销售的总和,然后
SELECT SUM(销售)凡
敏(日期1)和Max(DATE2)之间日期
我不明白您的查询,但我认为这是更你想要什么:
SELECT AVG(sales) FROM tbl GROUP BY DAY(date)
如果你需要每天平均销售:
SELECT date, sum(sales)/count(distinct date) FROM tbl GROUP BY date
当前的意图是当前等于'SELECT * FROM tbl;' – newtover
我不明白你想要做什么 - 你的查询日期总是在最大和最小之间,所以你可以删除条件。也许更详细地解释这个问题? – matino