我的程序中有一個if else
塊。根據今天的日期,在該塊中設置臨時變量的值@timeID
。IF..ELSE塊不能正常工作SQL
declare @timeId int
if(datename(Dw,getdate())='Sunday' or datename(Dw,getdate())='Saturday')
begin
set @timeId=2
end
if(datename(Dw,getdate())!='Sunday' or datename(Dw,getdate())!='Saturday')
begin
if(convert(varchar(11),getdate(),108)<='08:30:00')
begin
set @timeId=0
end
else
begin
set @timeId=1
end
end
select @timeId as TimeID
由於今天是週六,@timeID
必須設置等於2 但輸出顯示@timeId=1
從而導致錯誤的結果從我的程序。請幫助什麼是錯的。
select datename(Dw,getdate())
回報週六
我想條件'if(convert(varchar(11),getdate(),108)<='08:30:00')'變成false並且if(datename (Dw,getdate())!='Sunday'或datename(Dw,getdate())!='Saturday')'是真的。 – TechDo