where #{date} between begin_date and end_date, mysql中是否可以这样写来比较时间。

where #{date} between begin_date and end_date, mysql中是否可以这样写来比较时间。,第1张

惯例,在等号左边尽量不要有对字段的运算,所以一般用法有:

1、判断其是否在某个日期区间:

Where CheckDate Between '2013-01-01' And '2013-01-31'

这个方法也可用于加几天是多少,或减几天是多少:

把起迄日期参数化,原CheckDate要加的,那就变成@BeginDate加,减也同理~

2、判断其是否大于某天

Where CheckDate >'2013-01-01' 或大于等于:Where CheckDate >='2013-01-01'

小于某天

Where CheckDate <'2013-01-01' 或小于等于:Where CheckDate <='2013-01-01'

3、判断其是否等于某天:

如果Check字段不带时间,只是年月日,那直接等于就可以了;

Where CheckDate ='2013-01-01'

如果CheckDate字段是携带时间的就会有差别;这一点,在上述所有方法中都需要注意

eg:CheckDate 实际存储值可能是: 20130101 08:50:54:000 或 20130101 22:50:54:000

你好,很高兴回答你的问题。

大于当前日期?那就是未来的数据,未来的数据还没有产生呢吧。

还是想说查询早于当前日期的数据呢?

可以先提供一下数据库中的字段类型。

"DATEADD"函数在MySQL里是"DATE _ADD"函数,应该这样用,请看下面例子:

select * from mhxy_account where out_time

between date_add(out_time ,interval 2 day) and now()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8551888.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-17
下一篇 2023-04-17

发表评论

登录后才能评论

评论列表(0条)

保存