mysql 查询出多条数据并更新其中一个字段值,不让更新怎么办
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 查询出多条数据并更新其中一个字段值,不让更新怎么办相关的知识,希望对你有一定的参考价值。
要更新语句:UPDATE tb_repair_basic SET tb_repair_basic.visitStatus = '5' WHERE tb_repair_basic.id IN(
SELECT basic.id FROM tb_repair_mobileinfor mobileinfor, tb_repair_basic basic
WHERE (mobileinfor.career IS NULL OR mobileinfor.career = '') AND basic.customerName !='' AND basic.visitStatus= '2' AND mobileinfor.rbId = basic.id
)
先执行这个语句:
SELECT basic.id FROM tb_repair_mobileinfor mobileinfor, tb_repair_basic basic
WHERE (mobileinfor.career IS NULL OR mobileinfor.career = '') AND basic.customerName !='' AND basic.visitStatus= '2' AND mobileinfor.rbId = basic.id
结果:
合起来执行就报错:[Err] 1093 - You can't specify target table 'tb_repair_basic' for update in FROM clause
SELECT mobileinfor.rbId FROM tb_repair_mobileinfor mobileinfor
WHERE (mobileinfor.career IS NULL OR mobileinfor.career = '')
) and tb_repair_basic.customerName !='' and tb_repair_basic.visitStatus= '2'
不能对同一个表tb_repair_basic 同时select和update 参考技术A 你先只更新一个试试!
以上是关于mysql 查询出多条数据并更新其中一个字段值,不让更新怎么办的主要内容,如果未能解决你的问题,请参考以下文章