如圖,表中有兩列值,現在要把兩列的值做交換,怎麼寫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列 真讓人苦笑不得。解決的最好辦法自然是直接修改系統資料庫對應表中資料 如...