Lea*_*SQL -1 sql-server select datetime
我有一个名为列createdate的datetime数据类型。我想提取今天和昨天之间的数据。
select * from table1(nolock) where createdate ='2018-06-01' --not getting any output
Run Code Online (Sandbox Code Playgroud)
我想要这样的东西:
select * from table1(nolock) where createdate between '2018-06-01' and '2018-06-02'
Run Code Online (Sandbox Code Playgroud)
而不是硬编码日期,我需要之间dateadd(d,-1,getdate()) and getdate(),但getdate()提供当前时间戳。我怎样才能搜索一整天 like2018-06-02而不是2018-06-02 02:12:13.423?
您总是可以使用SELECT CONVERT(date, GETDATE());.
所以要找到昨天的所有数据,你说:
DECLARE @today date = GETDATE();
SELECT ...
WHERE createDate >= DATEADD(DAY, -1, @today)
AND createDate < @today;
Run Code Online (Sandbox Code Playgroud)
对于今天,这是一个简单的更改:
WHERE createDate >= @today
AND createDate < DATEADD(DAY, 1, @today);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
48501 次 |
| 最近记录: |