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

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

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

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

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

sql中直接通过字符串比较就可以了比如: xxx_time >= '2019-04-15 23:59:59'如果是java的时间比较的方式就比较多了。转成date类型比较是比较常见的方式,或long类型的时间戳方式,或这统一格式的字符串方式、


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

原文地址: https://outofmemory.cn/zaji/8593048.html

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

发表评论

登录后才能评论

评论列表(0条)

保存