是否可以选择一些月份的所有字段?
例如:我有列'create_date'和此列的值:
2011-05-06 11:12:13 (this)
2012-06-06 13:12:13
2010-02-06 14:52:13
2011-05-06 21:12:13 (this)
2001-08-06 16:12:13
2011-09-06 18:12:43
2009-01-06 11:12:13
2012-02-06 12:17:55
2010-03-06 14:15:13
2012-05-06 11:19:23 (this)
如何选择月份等于05的所有字段?
答案 0 :(得分:29)
您可以使用
SELECT create_date FROM table WHERE MONTH(create_date) = 5
答案 1 :(得分:3)
SELECT * FROM your_table WHERE month(create_date) = 5
看看documentation 此查询适用于日期时间类型的列
答案 2 :(得分:3)
SELECT * FROM table WHERE MONTH(create_date) = 5
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_month
答案 3 :(得分:2)
使用month(Yourdate)
提取月份
答案 4 :(得分:2)
在使用MONTH()时偶然发现了一些需要注意的事情 它只会从DATE字符串中获取月份。不是来自unixtimestamp
如果您想将其与unixtimestamp一起使用,请尝试:
MONTH(FROM_UNIXTIME(create_date))
答案 5 :(得分:0)
使用此查询
SELECT
create_date
FROM
table
WHERE
MONTHNAME(create_date) = MONTHNAME(now())
答案 6 :(得分:-1)
您可以执行以下操作:
select create_date from "table" where create_date between '2011-05-01' and '2011-05-31';