我正在尝试确定计算日期的最佳方法(以分钟为单位)。我正在尝试确定注册过程(第8阶段和第10阶段)两个阶段之间的时间间隔,但我只需要处理阶段10的任何人。有两个表:注册和注册历史记录由注册ID号(摆脱)
我收到以下错误:
关键字'CASE'附近的语法不正确。
从下面。
Select datediff(Minute,startdate,enddate)
from Registration r with(nolock)
inner join registrationstagehistory rh with(nolock) on r.rid=rh.rhrid
可能是这样的:
CASE WHEN R.RsID=10 THEN
CASE rh.rhrsid
WHEN 8 then 'startdate'
WHEN 10 THEN 'enddate'
ELSE NULL
END
END
答案 0 :(得分:0)
你错过了一个CASE语句的END(它出现的内部语句但我不能确定我的语境):
CASE WHEN R.RsID=10 THEN
CASE rh.rhrsid
WHEN 8 then 'startdate'
WHEN 10 THEN 'enddate'
ELSE NULL
END
END