sam*_*ami 3 mysql sql replace phpmyadmin sql-update
我需要使用我在CodeID创建的新名称替换超过20 000个名称.
例如:我必须更新包含"狗"(其中有1代码ID)与"猫"的所有行,并更新包含"马"(其中有2代码ID)与"鸟"的所有行,等等.
第一个SQL语句:UPDATE animalTable SET cDescription="cat"WHERE CodeID= 1
第二个SQL语句:UPDATE animalTable SET cDescription="bird"WHERE CodeID= 2
这些陈述有效,但我需要更快的方法来做到这一点,因为我有超过20 000个名字.
先感谢您.
这是你能做到的最快的方法.
或者您想要在一个命令中更新所有记录?
你可以使用连接进行更新(固定语法...暂时没有使用过这个)
UPDATE animalTable
INNER JOIN CodeTable ON animalTable.CodeID = CodeTable.ID
SET animalTable.cDescription = CodeTable.Description_1;
Run Code Online (Sandbox Code Playgroud)
另一种选择是分裂更新为较小的批次,这样会减少表被锁定的时间......但是,更新的总时间将需要较长的时间(它只是一个precieved性能的改善)您可以通过更新只有某些做到这一点每批中的ID范围.
您也可以将该数据放在单独的表中.由于数据未规范化.将它移开,使其更加规范化.
| 归档时间: |
|
| 查看次数: |
7177 次 |
| 最近记录: |