sql查询昨天的语句

declare @yesterday datetime
select @yesterday=???????
后面应该怎么填,我是想每次查询都是昨天的记录。因为每次都要填日期上去太麻烦了!
我要搜出来的日期模式是“20101124”其他日期模式就查询不到了

不知确定你的字段类型是datetime,还是char
如果是datetime
declare @yesterday datetime
select @yesterday=cast(convert(char(8), dateadd(day,-1,getdate()),112) as datetime) --截掉了时间部分。
select * from 表 where 日期字段 >= @yesterday and 日期字段 < dateadd(day,1,@yesterday) -- 这样包含了昨天0:00:00到23:59:59之间的所有记录,如果有时间部分的话。

如果是char
declare @yesterday char(8)
select @yesterday=convert(char(8), dateadd(day,-1,getdate()),112) --‘20101124’
select * from 表 where 日期字段 = @yesterday
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-11-25
declare @yesterday datetime
select @yesterday=DATEADD(DAY,-1,GETDATE())
select @yesterday,GETDATE()
相似回答