如何从'Year'获取数据,其中'Year'是DATETIME列

时间:2017-11-14 07:55:06

标签: mysql sql date datetime

我想从指定年份的表中获取每个数据。但问题是我把日期设置为DATETIME类型。

我正在尝试这样的事情:

SELECT
    *
FROM
    table
WHERE
    entrytime = 2017 //entrytime is datetime type.

但是,这是错误的。

有没有办法获取数据或者更好的方法?

谢谢。

3 个答案:

答案 0 :(得分:2)

您可以在日期时间使用年份功能:

SELECT *
FROM table
WHERE year(entrytime) = 2017

或更好:

SELECT *
FROM table
WHERE entrytime >= '2017-01-01'
AND entrytime < '2018-01-01'

后者可以使用index(如果存在于entrytime列上),这可以使您的查询运行得更快。

答案 1 :(得分:0)

您可以使用year功能提取<?php if ($_SERVER['REQUEST_URI']=='/') { echo('<p>something</p>'); } ?> 的年份:

datetime

答案 2 :(得分:0)

你可以使用YEAR功能,上面有一个文件here

因此...

SELECT *
FROM   mytable
WHERE  YEAR(entrytime) = 2017