2011-12-20 148 views
3

我有一個存儲char(6)值的列的Sybase表。我想刪除此列並創建兩個char(3)列,將原始列的前三個字符複製到第1列,將最後3個字符複製到第2列。什麼是最好的方法來做到這一點?將列拆分爲兩列並複製值

回答

3
ALTER TABLE YourTable ADD FirstHalf CHAR (3) 
ALTER TABLE YourTable ADD SecondHalf CHAR (3) 

UPDATE YourTable 
SET 
    FirstHalf = LEFT(OriginalColumn, 3), 
    SecondHalf = RIGHT(OriginalColumn, 3) 

ALTER TABLE YourTable DROP COLUMN OriginalColumn 
+0

輝煌 - 短而簡單:) – Graeme 2011-12-21 09:23:22

1

創建您的兩個新列。

更新的東西表像

UPDATE 
    table 
SET 
    new1 = LEFT(old, 3), 
    new2 = RIGHT(old, 3) 

刪除舊列。