运算符与日期之间的mysql [英] mysql between operator with dates
本文介绍了运算符与日期之间的mysql的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
select '2011-02-29' BETWEEN '2011-02-01' AND '2011-03-03'
这是返回1.我认为之间的不考虑闰年。我想要你的看法?
this is returning 1. I think between doesn't consider leap year. I want your view on this?
SELECT DATE('2010 -04-31')
返回NULL;
但是 select str_to_date('2010-04-31','%Y-%m-% d')
正在重新调用日期。
SELECT DATE( '2010-04-31' )
is returning NULL;
But select str_to_date('2010-04-31', '%Y-%m-%d')
is retuning date.
为什么?
感谢
Venu
Thanks Venu
推荐答案
您需要将其转换为:
SELECT DATE('2011-02-29') BETWEEN DATE('2011-02-01') AND DATE('2011-03-03')
从网站:
为了在使用BETWEEN与日期或时间值时获得最佳效果,请使用
CAST()将值显式转换为所需的数据类型。
示例:如果将DATETIME与两个DATE值进行比较,请将
DATE值转换为DATETIME值。如果您在比较DATE时使用诸如
'2001-1-1的字符串常量,则将该字符串转换为DATE 。
这篇关于运算符与日期之间的mysql的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文