1. Execute SQL as follows
UPDATE `xx_themes` SET `is_original` = (SELECT `is_original` FROM `xx_themes` WHERE `id` = '237') WHERE `id` = 248
2. Error: 1093 – you canT specific target tablexx_themesfor update in from clause. as shown in Figure 1

UPDATE `xx_themes` SET `is_original` = (SELECT `is_original` FROM `xx_themes` WHERE `id` = '237') WHERE `id` = 248
> 1093 - You can't specify target table 'xx_themes' for update in FROM clause
> 时间: 0s
3. Reference:https://dev.mysql.com/doc/refman/5.7/en/update.html, in MySQL, you cannot modify the same table used in the Select section. You can connect the table to itself, which will cause MySQL to treat the table as two different things, allowing for destructive changes. as shown in Figure 2

UPDATE `xx_themes` AS t
INNER JOIN `xx_themes` AS f ON t.id=248 and f.id=237
SET t.is_original = f.is_original
需要长期技术维护或远程问题排查?
我是拥有 15+ 年经验的 PHP / Go 后端工程师,长期关注已有系统维护、Bug 修复、性能优化、服务器排查、WordPress 网站维护和小功能迭代。
如果你的项目遇到以下情况,可以先从一次小问题排查开始合作:
- ✅ PHP / Laravel / Yii2 老项目无人维护
- ✅ Go / Gin 后端接口需要排查或优化
- ✅ WordPress 网站访问慢、报错或插件冲突
- ✅ Nginx / MySQL / Redis / Linux 服务器异常
- ✅ CDN / Cloudflare / DNS / HTTPS 配置问题
- ✅ 需要长期远程技术支持或兼职维护
更多介绍请查看:关于我 & 合作
微信:13980074657
邮箱:shuijingwanwq@gmail.com
Telegram:@shuijingwan
GitHub:https://github.com/shuijingwan


发表回复