2016-07-24 135 views
3

在我的表格中有兩列。 表結構爲:更新同一個表格的一列中的多個列值

組合的數據類型爲varchar(50),First的數據類型爲int

ID--Combined -----------First 

1---1.2.3.4-------------- null 

2---3.8.6.9-------------- null 

我想將其轉換爲

ID---Combined -----------First 

1---1.2.3.4-------------- 1 

2---3.8.6.9-------------- 3 

我寫的代碼

UPDATE dbo.Test 
SET dbo.Test.First = CAST(SUBSTRING(T.Combined,1,1) AS INT) 
FROM dbo.Test as T 
WHERE T.ID = dbo.Test.ID; 

這行,但我的代碼給出了錯誤 'The multi-part identifier "dbo.Test.ID" could not be bound.'

+1

語法是錯誤的。 – 1000111

回答

1

你不這裏需要更新語法。由於您希望您的First列涉及到同一行的Combined列,一個簡單的更新語句就可以了:

UPDATE dbo.Test 
SET dbo.Test.First = CAST(SUBSTRING(dbo.Test.Combined, 1, 1) AS INT) 
相關問題