MYSQL从表中选择所有月份?

时间:2011-07-18 10:56:36

标签: php mysql sql

是否可以选择一些月份的所有字段?

例如:我有列'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的所有字段?

7 个答案:

答案 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)

答案 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';