<i id='b8C2H'><tr id='b8C2H'><dt id='b8C2H'><q id='b8C2H'><span id='b8C2H'><b id='b8C2H'><form id='b8C2H'><ins id='b8C2H'></ins><ul id='b8C2H'></ul><sub id='b8C2H'></sub></form><legend id='b8C2H'></legend><bdo id='b8C2H'><pre id='b8C2H'><center id='b8C2H'></center></pre></bdo></b><th id='b8C2H'></th></span></q></dt></tr></i><div id='b8C2H'><tfoot id='b8C2H'></tfoot><dl id='b8C2H'><fieldset id='b8C2H'></fieldset></dl></div>
    1. <legend id='b8C2H'><style id='b8C2H'><dir id='b8C2H'><q id='b8C2H'></q></dir></style></legend>

      <small id='b8C2H'></small><noframes id='b8C2H'>

        • <bdo id='b8C2H'></bdo><ul id='b8C2H'></ul>

        <tfoot id='b8C2H'></tfoot>

        MySql 一次更新两个表

        时间:2023-06-02
            <tbody id='oZ9UF'></tbody>

              <bdo id='oZ9UF'></bdo><ul id='oZ9UF'></ul>
              • <i id='oZ9UF'><tr id='oZ9UF'><dt id='oZ9UF'><q id='oZ9UF'><span id='oZ9UF'><b id='oZ9UF'><form id='oZ9UF'><ins id='oZ9UF'></ins><ul id='oZ9UF'></ul><sub id='oZ9UF'></sub></form><legend id='oZ9UF'></legend><bdo id='oZ9UF'><pre id='oZ9UF'><center id='oZ9UF'></center></pre></bdo></b><th id='oZ9UF'></th></span></q></dt></tr></i><div id='oZ9UF'><tfoot id='oZ9UF'></tfoot><dl id='oZ9UF'><fieldset id='oZ9UF'></fieldset></dl></div>
                <legend id='oZ9UF'><style id='oZ9UF'><dir id='oZ9UF'><q id='oZ9UF'></q></dir></style></legend>

              • <tfoot id='oZ9UF'></tfoot>

                • <small id='oZ9UF'></small><noframes id='oZ9UF'>

                  本文介绍了MySql 一次更新两个表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我有两个表需要完全相同的值用于非规范化目的.

                  I have two tables that need the exact same values for denormalization purposes.

                  这是查询.

                  第一张桌子

                  UPDATE Table_One 
                  SET win = win+1, streak = streak+1, score = score+200 
                  WHERE userid = 1 AND lid = 1 LIMIT 1
                  

                  第二张桌子

                  UPDATE Table_Two 
                  SET win = win+1, streak = streak+1, score = score+200 
                  WHERE userid = 1 LIMIT 1
                  

                  正如您所看到的,两个表之间的唯一区别是它们的名称,而第二个表没有 lid

                  As you can see the only difference between both tables is their name and table two doesn't have the field lid

                  无论如何要将两个更新合并为一个?

                  Anyway to combine both updates to just one?

                  推荐答案

                  应该可以使用多表更新,如文档中所述.

                  It should be possible with a multi-table update, as described in the documentation.

                  http://dev.mysql.com/doc/refman/5.5/en/update.html

                  UPDATE Table_One a INNER JOIN Table_Two b ON (a.userid = b.userid)
                  SET
                    a.win = a.win+1, a.streak = a.streak+1, a.score = a.score+200,
                    b.win = b.win+1, b.streak = b.streak+1, b.score = b.score+200 
                  WHERE a.userid = 1 AND a.lid = 1 AND b.userid = 1
                  

                  注意:Multi-table 不支持 LIMIT,所以这可能会导致更多的悲伤,具体取决于细节.

                  Note: Multi-table doesn't support LIMIT, so this could cause more grief depending on the details.

                  存储过程或事务可能是更好的解决方案.

                  Stored procedures or transactions may be a nicer solution.

                  这篇关于MySql 一次更新两个表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:更新 MySQL 中的一列 下一篇:在 Django ORM 中查询时如何将字符转换为整数?

                  相关文章

                  <legend id='mAYLR'><style id='mAYLR'><dir id='mAYLR'><q id='mAYLR'></q></dir></style></legend>

                      <small id='mAYLR'></small><noframes id='mAYLR'>

                      <i id='mAYLR'><tr id='mAYLR'><dt id='mAYLR'><q id='mAYLR'><span id='mAYLR'><b id='mAYLR'><form id='mAYLR'><ins id='mAYLR'></ins><ul id='mAYLR'></ul><sub id='mAYLR'></sub></form><legend id='mAYLR'></legend><bdo id='mAYLR'><pre id='mAYLR'><center id='mAYLR'></center></pre></bdo></b><th id='mAYLR'></th></span></q></dt></tr></i><div id='mAYLR'><tfoot id='mAYLR'></tfoot><dl id='mAYLR'><fieldset id='mAYLR'></fieldset></dl></div>
                      • <bdo id='mAYLR'></bdo><ul id='mAYLR'></ul>
                    1. <tfoot id='mAYLR'></tfoot>