how to update swap values of two rows with single query

后端 未结 2 1633
太阳男子
太阳男子 2020-12-08 16:35

Is there a query with which i can exchange the values of two rows with single query?

相关标签:
2条回答
  • 2020-12-08 17:11

    you can see the solution in this article

    http://www.microshell.com/database/sql/swap-values-in-2-rows-sql/

    look at the : The elegant way , make a join to get the data from the 2 rows to be swapped in 1 row, after that make an update is easy.

    example :

    UPDATE
    rules AS rule1
    JOIN rules AS rule2 ON
    ( rule1.rule_id = 1 AND rule2.rule_id = 4 )
    SET
    rule1.priority = rule2.priority,
    rule2.priority = rule1.priority
    ;
    
    0 讨论(0)
  • 2020-12-08 17:21
    UPDATE my_table SET a=@tmp:=a, a=b, b=@tmp;
    
    0 讨论(0)
提交回复
热议问题