有時候,我們需要複製某個欄位一整列的資料到另外一個新的欄位中,或是需要把某個表的某個欄位的值跨表複製到另一個表中的某個欄位,本文就羅列了一些SQL語句寫法,需要的朋友可以參考下
需求:把一個表某個欄位內容複寫到另一張表的某個欄位。 實現sql語句1: 代碼如下:UPDATE file_manager_folder f1LEFT OUTER JOIN file_manager_folder f2 ON f1.name = f2.name AND f2.parentId = 54SET f1.parentId = 54 WHERE f2.name IS NULL AND f1.id IN (1,2,3); 實現sql語句2: 代碼如下:update B set extra = A.extra from A join B on (A.id = B.id); 實現sql語句3: 代碼如下:update b set b.sms = (select a.sms from a where a.id = b.id)需要確定兩張表中的id都是主鍵或者唯一 實現sql語句4: 代碼如下:UPDATE A SET A.SMS = (SELECT B.SMS FROM B WHERE A.ID = B.ID) WHERE EXISTS (SELECT 1 FROM B WHERE A.ID = B.ID); 實現sql語句5:複製一個表欄位資料到另外一個表的欄位,可以這麼寫:實現sql語句5:代碼如下:UPDATE tb_1 INNER JOIN tb_2 ON tb_1.tid = tb_2.tidSET tb_1.tcontent = tb_2.tcontent 附:同表複製 需求:把同一張表的一個欄位內的內容複寫到另一個欄位裡 例1:我想把article表中A欄位的內容複寫到article表中B欄位裡面sql語句為: 代碼如下:update article set B=A; 例2:有時候,我們需要複製某個欄位一整列的資料到另外一個新的欄位中,這很簡單,SQL可以這麼寫: 代碼如下:UPDATE tb_1 SET content_target = content_source;大概寫法如下:代碼如下:Update {your_table} set {source_field} = {object_field} WHERE cause