我有一个sql查询如下:
select * from Txn_Master
where Txn_Type = 'TPD' and
Txn_Date = Getdate()
order by Txn_ID DESC
但是在这个 sql-server 查询中,当我手动输入日期(如“01/06/2023”)时,它会在表中显示数据,但每当我输入 getdate() 函数以自动获取当前日期时,它不显示任何数据,只显示空白表
我有一个sql查询如下:
select * from Txn_Master
where Txn_Type = 'TPD' and
Txn_Date = Getdate()
order by Txn_ID DESC
但是在这个 sql-server 查询中,当我手动输入日期(如“01/06/2023”)时,它会在表中显示数据,但每当我输入 getdate() 函数以自动获取当前日期时,它不显示任何数据,只显示空白表
GETDATE()
返回当前系统时间戳作为一个DATETIME
值(日期和时间到毫秒)。这显然不同于DATE
您提供的值字符串'01/06/2023'
。您Txn_Date
可能真的没有任何值与您运行查询时的即时时间具有相同的毫秒数GETDATE()
。要使您的查询与 一起使用
GETDATE()
,您需要将其强制转换为DATE
如下数据类型: