有没有办法使用单个SQL查询为每行更新具有不同值的多个行?我必须使用不同的数据更新许多行中的一个列.对每一行使用单独的更新查询似乎过多,所以如果可能的话,我希望将此过程合并到单个SQL语句中,或者至少减少所需的查询数量.
我使用PHP与Zend框架和MySql.
创建一个临时表并填写:
CREATE TEMPORARY TABLE temptable (id INTEGER, VALUE VARCHAR(200)) INSERT INTO temptable VALUES ('1', 'val1'), ('2', 'val2'), ('3', 'val3'), ('4', 'val4')
然后发出:
UPDATE mytable m, temptable t SET m.value = t.value WHERE m.id = t.id