Mysql兩列值互換

2021-08-30 06:19:44 字數 424 閱讀 2016

如圖,表中有兩列值,現在要把兩列的值做交換,怎麼寫sql?

第一印象:擴充套件出來一列:cc,然後將bc值給cc。然後ac再更新給bc;然後cc更新到ac;然後刪除cc列。

如此一來,太麻煩了。

那麼一條sql怎麼改呢?update tb set ac=bc,bc=ac .這樣?你會發現兩值變成了一樣的,失敗!!!為啥呢?

如下,執行ac=bc,第一條ba值更新給了ac,此時ac和bc的值是一樣的,都是bc的值。然後你又把更新後的ac值(還是bc的值)更新給了bc。所以更新失敗。

那用一條sql怎麼寫呢?

update tb t1, tb t2  set t1.ac=t1.bc,t2.bc=t2.ac;

mysql互換表中兩列資料

mysql互換表中兩列資料 update product set original price price,price original price 上面sql語句顯然不可取 因為先執行original price price original price的值已經更新為price,然後執行price...

mysql互換表中兩列資料

在開發過程中,有時由於業務等需要把乙個表中的兩列資料進行交換。解決方案 使用update命令,這完全得益於mysql sql命令功能的強大支援。中原來資料類似如下 select from product id name original price price 1 雪糕 5.00 3.50 2 鮮花...

mysql互換表中兩列資料方法

小引 大千世界無奇不有,不怕做不到就怕想不到。在mysql軟體開發過程中,有時就需要把乙個表中的兩列資料進行交換。例如,我最近遇到的乙個案例是專案資料準備時客戶把 中兩列資料弄反了 把a列資料輸入到了b列,把b列資料輸入到了a列 真讓人苦笑不得。解決的最好辦法自然是直接修改系統資料庫對應表中資料 如...