我认为我做了一些愚蠢的事情,因为这个查询没有给我想要的输出:
我的表是这样的:
id integer,
current_date date
表中的条目是:
1, 2016-08-24
2, 2016-08-25
3, 2016-08-26
4, 2016-07-21
5, 2016-07-22
查询:
select MONTH(current_date),count(*)
from test
group by MONTH(current_date)
此查询返回我:
8, 5
我在期待:
7, 2
8, 3
答案 0 :(得分:3)
current_date
是一个MySQL reserved word,它返回今天的日期。要将其用作表格列,您需要将其放入反引号中。
select MONTH(`current_date`), COUNT(*)
from test
GROUP BY MONTH(`current_date`)
或者您可以将列重命名为与保留字不冲突的内容。
答案 1 :(得分:-1)
感谢 Krunal ,问题是 current_date 是保留字。