SQLServer中ISNULL、NULLIF和CONVERT函数

create view sss as(select

  ISNULL(operate_time, CONVERT(VARCHAR(20),create_time,120)) time

  from s_project
);

一、ISNULL()函数  (oracle中为nvl()函数)

  ISNULL()函数 使用指定的值替换 NULL。
  语法:ISNULL ( check_expression , replacement_value ) 
  参数:check_expression–将被检查是否为 NULL的表达式。check_expression 可以是任何类型的。
    replacement_value–在 check_expression 为 NULL时将返回的表达式。

    replacement_value 必须与 check_expresssion 具有相同的类型。 
  返回类型:返回与 check_expression 相同的类型。
  注释:如果 check_expression 不为 NULL,那么返回该表达式的值;否则返回 replacement_value。

二、NULLIF(a,b)函数

  NULLIF:需要两个参数,如果两个指定的表达式等价,则返回null 
    例子:NULLIF(a,b) 
    说明:如果a和b是相等的,那么返回NULL,如果不相等返回a 

三、CONVERT()

  CONVERT()函数是把日期转换为新数据类型的通用函数。可以用不同的格式显示日期/时间数据。

  CONVERT(data_type(length),data_to_be_converted,style);
   data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式
Style ID Style 格式
100 或者 0 mon dd yyyy hh:miAM (或者 PM)
101 mm/dd/yy
102 yy.mm.dd
103 dd/mm/yy
104 dd.mm.yy
105 dd-mm-yy
106 dd mon yy
107 Mon dd, yy
108 hh:mm:ss
109 或者 9 mon dd yyyy hh:mi:ss:mmmAM(或者 PM)
110 mm-dd-yy
111 yy/mm/dd
112 yymmdd
113 或者 13 dd mon yyyy hh:mm:ss:mmm(24h)
114 hh:mi:ss:mmm(24h)
120 或者 20 yyyy-mm-dd hh:mi:ss(24h)
121 或者 21 yyyy-mm-dd hh:mi:ss.mmm(24h)
126 yyyy-mm-ddThh:mm:ss.mmm(没有空格)
130 dd mon yyyy hh:mi:ss:mmmAM
131 dd/mm/yy hh:mi:ss:mmmAM

发表评论

电子邮件地址不会被公开。 必填项已用*标注