2017-08-09 85 views
0

我有一個字符串abcdef。我需要截斷它的結果def,然後插入到這個字符串的新值fff得到結果fffdef。到目前爲止,我已經使用子字符串截斷並插入字符串

UPDATE mytable 
    SET col1 = 
    SUBSTRING(col1, 3, LEN(col1)) 
from 
    mytable 

但我怎樣才能插入到字符串值的開始?

回答

1

嘗試:

UPDATE mytable 
    SET col1 = 'fff' + 
    SUBSTRING(col1, 3, LEN(col1)) 
from 
    mytable 

警告:這會在你的表更改col1在所有行

1

您的查詢應該罰款。 。 。沒有from和使用STUFF()

UPDATE mytable 
    SET col1 = STUFF(col1, 1, 3, 'FFF') 

如果使用from條款,給予參考不同的別名:

UPDATE t 
    SET col1 = STUFF(col1, 1, 3, 'FFF') 
    FROM mytable t 

雖然您的版本做的工作:

UPDATE mytable 
    SET . . . 
    FROM mytable; 

我認爲它是危險的,因爲這會做很大的不同:

UPDATE mytable 
    SET . . . 
    FROM mytable t; 
0

你只需要concat(),像這樣:

UPDATE mytable 
    SET col1 = CONCAT('fff', SUBSTRING(col1, 3, LEN(col1)) 
from 
    mytable