Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何从指定的“年”中获取数据,其中“年”是DATETIME列_Mysql_Sql_Date_Datetime - Fatal编程技术网

Mysql 如何从指定的“年”中获取数据,其中“年”是DATETIME列

Mysql 如何从指定的“年”中获取数据,其中“年”是DATETIME列,mysql,sql,date,datetime,Mysql,Sql,Date,Datetime,我想从指定年份的表格中获取所有数据。但问题是我把日期放在DATETIME类型 我正在尝试类似的东西: SELECT * FROM table WHERE entrytime = 2017 //entrytime is datetime type. 但是,这是错误的 有没有办法获得数据或者更好的方法 谢谢。您可以使用该函数提取日期时间的年份: SELECT * FROM table WHERE year(entrytime) = 2017 你可以使用年份功能,上面有一个

我想从指定年份的表格中获取所有数据。但问题是我把日期放在DATETIME类型

我正在尝试类似的东西:

SELECT
    *
FROM
    table
WHERE
    entrytime = 2017 //entrytime is datetime type.
但是,这是错误的

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

谢谢。

您可以使用该函数提取日期时间的年份:

SELECT *
FROM table
WHERE year(entrytime) = 2017

你可以使用年份功能,上面有一个文档

所以


您可以在datetime上使用year函数:

SELECT *
FROM table
WHERE year(entrytime) = 2017
或者更好:

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

后者可以利用entrytime列上的索引,这可以使您的查询运行更快。

该手册是一个很好的信息源,可能与better point to重复。后者比前者好得多,我很想完全忘记前者
SELECT *
FROM table
WHERE entrytime >= '2017-01-01'
AND entrytime < '2018-01-01'