我有一個表,說 T1(COL1,COL2,COL3,COL4)更新在SQL Server
現在說的第2列是有VARCHAR值。 要求:應始終有11位數字。
有值whoes長度範圍從5到11位數字。
根據col2表中已經存在的值的長度,我需要在數字前綴零(0)。
例如,如果值是12345我需要將它更新爲00000等等。
請建議。如果可能的話,讓我知道爲多個表格的多行(基於長度)指定此更新staement。
我有一個表,說 T1(COL1,COL2,COL3,COL4)更新在SQL Server
現在說的第2列是有VARCHAR值。 要求:應始終有11位數字。
有值whoes長度範圍從5到11位數字。
根據col2表中已經存在的值的長度,我需要在數字前綴零(0)。
例如,如果值是12345我需要將它更新爲00000等等。
請建議。如果可能的話,讓我知道爲多個表格的多行(基於長度)指定此更新staement。
嘗試這種情況:
update T1
set col2 = RIGHT('000000'+col2,11)
SELECT * RIGHT(REPLICATE( '0',11) + CAST(col2的AS VARCHAR(11)),11)FROM T1
col2的希望這可能有幫助。
喜歡的東西
Update SomeTable set SomeColumn = replicate('0',11 - data_length(SomeColumn)) + SomeColumn
Where blah blah blah
應該這樣做
認爲沒有必要光標在所有。