[SQL ] 兩筆紀錄裡面的欄位值互換

看板Database作者 (sam)時間10年前 (2013/10/18 10:48), 編輯推噓2(200)
留言2則, 1人參與, 最新討論串1/2 (看更多)
有一個疑問,請問一下各位 以下是我的test資料表 id (主鍵), pid(唯一鍵) 我想做的是透過一句sql將兩筆記錄的pid值互換, sql="UPDATE test t1, test t2 SET t1.pid=t2.pid, t2.pid=t1.pid WHERE t1.pid=1 AND t2.pid=2"; 但碰到問題是因為[ pid是唯一鍵 ],所以當更新其中一筆記錄時,就會造成pid重複, 想請問有沒有方法可以達成一句sql將兩筆記錄的pid值互換, 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.69.59.91

10/18 20:12, , 1F
update test set pid=id, id=pid;
10/18 20:12, 1F

10/18 20:21, , 2F
Sorry,誤會原問題,能有表格資料嗎?
10/18 20:21, 2F
文章代碼(AID): #1IOA6RGa (Database)
文章代碼(AID): #1IOA6RGa (Database)