2016-11-29 77 views
0

我有以下的領域被稱爲字段1:的SQL Server:返回NULL如果第一個字符是數字

132 16 
Z23 12 
231 11 
JKK 11 

我想創建一個新列,字段2,因此,如果此列以數字開頭,它會返回NULL,如果它以一個字母開頭,它會返回整個字符串。

上面的例子看起來像:

132 16  NULL 
Z23 12  Z23 12 
231 11  NULL 
JKK 11  JKK 11 

我與

Field2 = CASE 
    WHEN (first letter is a number) THEN NULL 
    ELSE Field1 
END 

想這樣做的,我需要在括號幫助填充。 在此先感謝

回答

2

嘗試

Field2 = CASE 
    WHEN Field1 like '[0-9]%' THEN NULL 
    ELSE Field1 
END 
+0

刪除^從開始。 –

0

使用下一個標準:

col1 like '[0-9]%' 

演示: -

Create table #temp 
(col1 varchar(10)) 

insert into #temp values 
      ('132 16'), 
      ('Z23 12'), 
      ('231 11'), 
      ('JKK 11') 


select col1 , col2 = CASE 
       WHEN col1 like '[0-9]%' THEN NULL 
       ELSE col1 
      END 
from #temp 

drop table #temp 

結果: -

enter image description here

相關問題