子串声明

时间:2014-08-08 15:54:22

标签: sql-server

我正在使用SQL substring语句返回Middle Name初始化后的句点,例如“H”。如果没有要返回的中间名,则句点仍会在应为空的字段中返回。

以下是我的发言:

substring([Middle Name],1,1)+('.')

2 个答案:

答案 0 :(得分:3)

NULL + anything == NULL那样:

select left(nullif([Middle Name], ''), 1) + '.'

或者

select case when [Middle Name] is not null then left([Middle Name], 1) + '.' end

答案 1 :(得分:2)

试试这个:

substring(nullif([Middle Name], ''), 1, 1) + '.'

您可以查看NULLIF

  

如果两个指定的表达式相等,则返回null值。