SQL根据日期条件使用between查询数据集应注意事项

    技术2022-07-10  121

    案例

    数据集如下:表名(tb_Employee)

    IdNameDateTime10000001张三2020-07-01 07:01:0010000002李四2020-07-01 12:01:0010000003王五2020-07-01 23:01:00

    以上数据集的日期字段数据类型是datetime,保存格式为yyyy-MM-dd HH:mm:ss

    查询语句如下

    SELECT * FROM tb_Employee WHERE DateTime BETWEEN ‘2020-07-01’ AND ‘2020-07-01’

    当前查询语句是想查询日期为2020-07-01的数据,但是最终结果是空的,查询不到数据

    原因

    短日期类型,默认Time的时分秒为00:00:00,所以当使用 BETWEEN作为限制条件查询时,就相当于BETWEEN ‘2020-07-01 00:00:00’ AND ‘2020-07-01 00:00:00’ 因此最终查询不出任何数据

    解决方案

    1.给查询语句补全时分秒

    SELECT * FROM tb_Employee WHERE DateTime BETWEEN ‘2020-07-01 00:00:00’ AND ‘2020-07-01 23:59:59’

    以此便可查询出想要的结果

    Processed: 0.010, SQL: 9