SQL Server DATEDIFF() 函数和IFF函数

2017年11月中旬开始接触sqlserver数据库
遇见几个函数也通过百度语法学习整理如下:
DATEDIFF() 函数:返回两个时间之间的差

DATEDIFF(datepart,startdate,enddate)
startdate 和 enddate 参数是合法的日期表达式。
datepart 参数可以是下列的值:

datepart	缩写
年	       yy, yyyy
季度	        qq, q
月	        mm, m
年中的日	dy, y
日	        dd, d
周       	wk, ww
星期		dw, w
小时		hh
分钟		mi, n
秒	        ss, s
毫秒		ms
微妙		mcs
纳秒		ns
示例:
SELECT DATEDIFF(day,'2017-10-29','2017-11-28') AS DiffDate




IIF函数:
语法:IIF(布尔表达式,result_a,result_b) 如果布尔表达式成立则返回result_a,如果不成立返回result_b

SELECT  id,iif(id=1,null,'0') as iif_result,
nullif(id,1) nullif_result,
case when id=1 then null else 0 end case_result
from (select 1 id   
union all
select '' )a


同时发现select '' 的话返回0,
可想而知以下表达式1返回1,表达式2没有任何意义为null


 select 1-''
 select 1-null  

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值