首页 > 解决方案 > 过滤日期时间未按预期工作

问题描述

我对具有以下两个字段的数据库具有读取权限:

Date1                    Place
2019-03-01 15:56:04.000  P1
2019-03-01 16:30:40.000  P2 
2018-06-21 13:30:40.000  P1  And so on

我正在运行如下查询:

select * from db where Date1='2019-03-01'

但我得到低于输出

Date1  Place

我没有得到这两行。

预期产出

    Date1                    Place
    2019-03-01 15:56:04.000  P1
    2019-03-01 16:30:40.000  P2 

有人可以帮忙吗。

标签: sqlsql-servertsql

解决方案


问题是列上的时间分量。

您可以使用范围:

select *
from db
where Date1 >= '2019-03-01' and
      Date1 < '2019-03-02'

或将列转换为日期:

where conert(date, Date1) = '2019-03-01'

推荐阅读