2013-07-04 76 views
1

我想將Field1中的所有內容追加到Field2中,然後使表中所有記錄的Field1值爲NULL。我不想將這些字段合併到一個字段中,我仍然希望這兩個字段保持不變。將列數據追加到SQL Server中的另一列

看看下面的例子:

Field 1  Field 2 
Test Value NULL 
NULL   Another Value 
My Value  Current Value 

我想結束了:

Field 1  Field 2 
NULL   Test Value 
NULL   Another Value 
NULL   Current ValueMyValue 

提前感謝!

回答

5

如何:

UPDATE table 
SET Field2 = isnull(Field2,'') + isnull(Field1,''), Field1 = NULL 

如果你不能確定它是包裝更新的BEGIN TRAN,ROLLBACK喜歡所以我建議:

BEGIN TRAN 

SELECT * FROM thistable 

UPDATE thistable 
SET Field2 = isnull(Field2,'') + isnull(Field1,'') 
, Field1 = NULL 

SELECT * FROM thistable 

ROLLBACK 

這樣,你就在變更爲「永久」之前查看查詢將執行的操作。一旦開心,將ROLLBACK改爲COMMIT並再次運行。

VIEW DEMO HERE

+0

曾任職完美!感謝演示。 – Ricketts

0

如何:

UPDATE MyTable 
SET Field2 = ISNULL(Field2, '') + ISNULL(Field1, '') 

要加入值到字段2。

而且

UPDATE MyTable 
SET Field1 = NULL 

要清除字段1,一旦你確定了第一個劇本的工作。

0

如何一點是這樣的:

UPDATE <Table name> SET field_2 = CONCAT(field_2, field_1); 
UPDATE <Table name> SET field_1 = NULL; 
相關問題