2012-06-19 64 views
0

我有一個列(nvarchar(255)),我期待修剪,只顯示名稱T-SQL - 修剪主角

輸入

22;#Simon Smith 
103;#John Doe 
34;#Sarah Jones 
1;#Robert Snow 
... 

輸出所需

Simon Smith 
John Doe 
Sarah Jones 
Robert Snow 
+1

[你有什麼嘗試?](http://whathaveyoutried.com) –

回答

2

假設;#總是存在,這應該是訣竅:

select substring('22;#Simon Smith', charindex(';#', '22;#Simon Smith')+2, 255) 

現在,你需要更新你的表:

更新的表名 集列名=子(列名,CHARINDEX( ';#',列名)+2,255)

更換tablenamecolumnname與正確的值。

1
SELECT 
RIGHT(YOUR_COLUMN, LEN(YOUR_COLUMN) - CHARINDEX('#', YOUR_COLUMN)) 
FROM YOUR_TABLE 
+0

這是一個比'substring'更好的解決方案。 – xpt