任务要求:把表fw_game字段kg的值中iw字符串去掉
错误写法:
update fw_game set kg=replace(kg,'iw','') where kg in(select kg from fw_game where kg like '%iw%') ;
解决方法:给查询加别名,用中间表来实现不是对同一表作操作。
正解写法:
update fw_game set kg=replace(kg,'iw','') where kg in(select * from(select kg from fw_game where kg like '%iw%') a);
本文讲解了一种常见的SQL更新语句错误,即在同一表中使用自身字段进行子查询时未正确处理的情况。通过一个具体例子,说明了如何通过引入别名和中间表的方法来修正这一错误,确保更新操作的正确执行。
2023

被折叠的 条评论
为什么被折叠?



