如何在where子句中使用mysql提取年份
我想在日期字段中搜索年份。我像这样使用提取,但它会产生错误。如何在where子句中使用mysql提取年份,mysql,Mysql,我想在日期字段中搜索年份。我像这样使用提取,但它会产生错误。 SELECT * FROM (blog) WHERE EXTRACT(YEAR FROM blog_dt) = '2014' 更简单: SELECT * FROM (blog) WHERE YEAR(blog_dt) = 2014 请参阅手册: 返回日期的年份,范围为1000到9999,或返回日期的0 “零”日期 mysql>选择年份('1987-01-01') 你应该这样做: SELECT * FROM (blog) W
SELECT * FROM (blog
) WHERE EXTRACT(YEAR FROM blog_dt
) = '2014'
更简单:
SELECT * FROM (blog) WHERE YEAR(blog_dt) = 2014
请参阅手册:
返回日期的年份,范围为1000到9999,或返回日期的0
“零”日期
mysql>选择年份('1987-01-01')
你应该这样做:
SELECT * FROM (blog) WHERE EXTRACT(YEAR FROM blog_dt)= '2014' ;
或
在EXTRACT()函数后面有一个额外的撇号,删除它,它应该可以工作(尽管@VMai的解决方案更简单,可读性更强您可以使用MYSQL中提供的函数DateFormat
select * FROM blog WHERE DATE_FORMAT(blog_dt,'%Y')='2014';
有关更多与日期相关的函数,请访问First syntax可在PHP 7.3.5版和Laravel 5.8版中顺利运行;谢谢。
SELECT * FROM (blog) WHERE YEAR(blog_dt)='2014';
select * FROM blog WHERE DATE_FORMAT(blog_dt,'%Y')='2014';