MySQL 一条SQL语句实现批量更新数据

MySQL 一条SQL语句实现批量更新数据(update结合case,when和then的使用案例)

MySQL 一条SQL语句实现批量更新数据_第1张图片

这句sql的意思是,更新display_order 字段,如果id=1 则display_order 的值为3,如果id=2 则 display_order 的值为4,如果id=3 则 display_order 的值为5。 

即是将条件语句写在了一起。 

这里的where部分不影响代码的执行,但是会提高sql执行的效率。确保sql语句仅执行需要修改的行数,这里只有3条数据进行更新,而where子句确保只有3行数据执行。

如果更新多个值的话,只需要稍加修改:

复制代码 代码如下:

MySQL 一条SQL语句实现批量更新数据_第2张图片

PHP可以使用foreach 来拼接SQL:

MySQL 一条SQL语句实现批量更新数据_第3张图片

你可能感兴趣的:(MySQL 一条SQL语句实现批量更新数据)