以下查询未返回正确的结果,因为它返回“九月”月的结果,但我需要从给定月份“八月”获得结果。
我的查询中有什么问题吗?
SELECT *
FROM table
WHERE YEAR(FROM_UNIXTIME(UNIX_date)) = '2012' AND
MONTH(FROM_UNIXTIME(UNIX_date)) = '08'
order by UNIX_date DESC
编辑:
返回的结果是这样的:
post_id user_id UNIX_date
95319 12 1346475459
97370 5 1346474849
83527 25 1346474631
83526 51 1346473357
85929 12 1346471009
26677 29 1346462100
26839 12 1346432911
85927 12 1346411636
答案 0 :(得分:0)
月份不应该有前导0
。因此,请尝试8
而不是08
。
您还可以发布一行返回的内容,以便我们了解UNIX_date的外观。
参考:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_month
答案 1 :(得分:0)
正如文档http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_month中所述,DAY
,MONTH
和YEAR
函数返回整数,因此{{1}的值为1-12(或零) }}