SQL语句(20分)

  • 主题发起人 主题发起人 xuefeiyang
  • 开始时间 开始时间
X

xuefeiyang

Unregistered / Unconfirmed
GUEST, unregistred user!
select Tdate,XXX from T1
Tdate是时间字段;XXX处要显示'A'/'B'/'C',条件是
if (Tdate<date-60)and(Tdate>date-30)
XXX:='A'
else
if (Tdate<date-90)and(Tdate>date-60)
XXX:='B'
if (Tate<date-120)and(Tdate>date-30)
XXX:='C';
 
既然你已经写出来了,还要问?
 
我不知道在XXX处怎么写阿
就是那种带case/if的条件查询
 
容易..既然是日期..把它截取出来就行了
用copy();就行了..
 
变通一下吧。

if (Tdate<date-60)and(Tdate>date-30) then
select Tdate,A from T1
else
if (Tdate<date-90)and(Tdate>date-60) then
select Tdate,B from T1
if (Tate<date-120)and(Tdate>date-30)
select Tdate,C from T1
 
select tdate,
case when tdate<getdate()-60 and tdate>getdate()-30 then 'A'
case when tdate<getdate()-90 and tdate>getdate()-60 then 'B'
case when tdate<getdate()-120 and tdate>getdate()-30 then 'C'
eles 'D'
end XXX
from T1
注意:SQL Server上的60分钟不能直接用60表示

 
To Adanz
报错,说有语法错误
 
接受答案了.
 
后退
顶部