我想写一个mysql查询来检索许多事情的计数。我需要知道的一件事是,有多少条目的日期与查询时的当前日期相比少于1个月。我已经搜索了堆栈溢出了很多,并咨询了mysql文档,但没有任何我正在尝试似乎工作。它一直告诉我我的语法错误。我很茫然。使用日期函数mysql查询时遇到问题
我有很多关于这个查询,其他一切似乎工作正常。
我使用mysql和phpmyadmin来管理我的数据库,并且我正在C#/ visual studio环境中编程。我不知道我使用的是哪个版本的mysql,但根据phpmyadmin的文档,我至少使用5.0版本。我查阅了mysql v5.0的文档,我查看了更新的版本,并且我尝试使用的sql函数没有改变。所以不应该有这个查询不起作用的原因,但从来没有它不起作用的原因。
SELECT count(*) total, ... sum(case where Date <= DATE_SUB(CURDATE(),INTERVAL 1 MONTH) then 1 else 0 end) lastmonth from table;
如果我删除了上面的sum语句,其余的查询确实有效。 sum之前的语句用逗号分隔,我看不出任何错误的语法,所以它必须与where语句中的sql函数有关。我从mysql文档页面逐字拷贝了这个语句,只改变了它所比较的变量的名字,并且间隔为1个月。
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html
所以我完全被卡住。可以使用一些帮助!谢谢。