C#中查SQL Server数据库中的数据,同时计算两个日期之间的天数差。查询语句使用DATEDIFF函数,当TIME2列有日期为空,想要用当前日期代替计算,使用case when then,当前时间日期用GETDATE()获取。

1.time1和time2是table1中的两列,这个语句计算这两列日期中间相差的天数,使用DATEDIFF函数。
实例1

select DATEDIFF(DAY, time1, time2)   AS 时间差距 from table1;

2.使用case when then判断time2 这一列中为null的日期,如果是用现在的时间代替。
GETDATE()是获取现在的时间。

//case when 使用
 select 
	case 
	    when 范围条件 then 产生的结果
	    when 范围条件  then 产生的结果
	    else 不是以上范围产生的结果
	end
from 表名

实例2

select DATEDIFF(DAY, time1, case 
when time2 is not null then time2 else GETDATE() end) AS 时间差距
 from table1;
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐