关于SQL SERVER 中的作业问题

来源:百度知道 编辑:UC知道 时间:2024/06/11 10:19:18
我想取一个日期型字段值减去当前日期,如果差值大于另一个字段的值,则给第三个字段赋值。
不好意思,我是新手,能否写的具体点,谢谢

select case (t.dateval - sysdate) chazhi when chazhi> t.ziduan1 then '赋值' t.ziduan1

注意:日期相减得出的是个天数,如果差值》字段1 ,那么'值' 给字段1

你是要计算出两个日期的差值,可以用DateDiff()这个方法,具体自己可以查下资料,在这里我就说下差值如果是天数的用法:
declare @a numeric(4,0)
set @a =datediff(day,'20091115','20100508')
print @a
第一介个参数是你要求的差值的类型,可以是天,小时,分钟等等,
后边两个参数是两个日期值,这样就可以得出两个日期相差的天数,得到的结果是174天,剩下的再根据你的条件进行赋值的操作吧。

用CASE WHEN
很容易解决

case when