从MySQL中选择特定年份

时间:2016-11-14 11:42:36

标签: php mysql

我的列名称为date。此列的格式类似于D/M/Y (14/11/2016)。我只想选择2016年。我该怎么办?

我现在正在使用此代码,我必须添加什么?

mysql_query("SELECT * FROM blog ORDER BY id DESC");

4 个答案:

答案 0 :(得分:4)

您的查询可能是:

"SELECT * FROM blog WHERE YEAR(date)='2016' ORDER BY id DESC";

如果您的日期列是日期数据类型。但由于你没有使用标准的mysql日期格式(YYYY-MM-DD),我猜它不是。

请注意您使用的是不推荐使用的MYSQL_ * API,您应该切换到MYSQLI或PDO

答案 1 :(得分:1)

我建议你不要使用mysql_query并转而使用PDO或MySQLi,而是根据你的问题:

 mysql_query("SELECT * FROM blog WHERE YEAR(Date) = 2016 ORDER BY id DESC")

答案 2 :(得分:1)

mysql_query("SELECT * FROM blog WHERE YEAR(Date) = 2016 ORDER BY id DESC");

mysql_query("SELECT * FROM blog WHERE date >= "00/00/2016" AND date <= "31/12/2016" ORDER BY id DESC");

mysql_query("SELECT DATE_FORMAT(date, '%d %m %Y') AS your_date FROM blog WHERE your_date LIKE "%2016" ORDER BY id DESC");

答案 3 :(得分:1)

试试这段代码:

SELECT YEAR(STR_TO_DATE('14/11/2016', '%d/%m/%Y'));