mysql更新语句很简单,更新一条数据的某个字段,一般这样写:
1 UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value';
如果更新同一字段为同一个值,mysql也很简单,修改下where
即可:
1 UPDATE mytable SET myfield = 'value' WHERE other_field in ('other_values');
这里注意,other_values
是一个逗号,
分隔的字符串,如:1,2,3
1 常规方案
那如果更新多条数据为不同的值,可能很多人会这样写:
foreach ($display_order as $id => $ordinal) {
$sql = "UPDATE categories SET display_order = $ordinal WHERE id = $id";
mysql_query($sql);
}
即是循环一条一条的更新记录。
一条记录update
一次,这样性能很差,也很容易造成阻塞。
更多:https://www.cnblogs.com/ldj3/p/9288187.html
实例:
(1)
更新指定值
UPDATE tag SET avatar = 'tagAvatarDefault.svg' WHERE avatar = '';
(2)
更新全部
UPDATE tag SET avatar = 'tagAvatarDefault.svg';
(3)
UPDATE comment_review_19_9
SET reviewed_at = '2019-09-30 10:00:00',
admin_name = 'admin'
WHERE
`review_status` = '3'
OR `review_status` = '2';