我有下面的代码来计算两个时间点之间的时间- 'CompleteDataTime‘和'RequestedDateTime’,单位是分钟。
Select [Financial Number],
datediff(mi,CompletedDateTime1, RequestedDateTime2) as Prov_to_dispo1
FROM NewTable
order by [Financial Number]
有些记录中的'CompleteDataTime‘变量为空或缺失;因此,在计算Prov_to_dispo1时,代码会为这些记录生成一个'null’值。
我的数据集中有另一个变量'Depart Date & Time',当'CompleteDataTime‘丢失时,我想用它作为'CompleteDataTime’的代理--这可能吗?
我假设我需要一个IF-THEN语句,如下所示
IF 'CompleteDataTime' = . THEN Prov_to_dispo1 = datediff(mi,'Depart Date &
Time', RequestedDateTime2) as Prov_to_dispo1
所需的输出应如下所示
FIN Prov_to_dispo1
1 345
2 685
3 148
4 306
5 265
发布于 2019-05-21 02:44:09
这个应该可以了。
Select [Financial Number],
case when isnull(CompletedDateTime1, '') = '' then
datediff(mi,DepartDateTime, RequestedDateTime2)
else
datediff(mi,CompletedDateTime1, RequestedDateTime2)
end as Prov_to_dispo1
FROM NewTable
order by [Financial Number]
https://stackoverflow.com/questions/56225616
复制相似问题