国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql error 1093

2024-07-24 12:36:27
字體:
來源:轉載
供稿:網友

Error Code: 1093. You can’t specify target table ‘t_user’ for update in FROM clause 0.015 sec
含義:不能在同一表中查詢的數據作為同一表的更新數據。
注意,這個問題只出現于mysql,mssql和oracle不會出現此問題。

關鍵字搜索:mysql error 1093

示例
這里寫圖片描述

刪除id大于26的數據:
delete from t_user where id in (select id from t_user where id > 26);
Error Code: 1093. You can’t specify target table ‘t_user’ for update in FROM clause 0.000 sec

解決方法:將select出的結果再通過中間表select一遍,這樣就規避了錯誤
更改SQL語句為:

delete from t_user where id in (select * from (select id from t_user where id > 26) tmp);

再優化之:

delete t from t_user t join (select id from t_user where id > 22) tmp on tmp.id = t.id;

總結:
在同一表中查詢的數據作為同一表的更新update或者刪除delete,sql語句如下:
主句(select * from (從句 temp)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 拉孜县| 塔城市| 绥滨县| 宁海县| 岳普湖县| 平凉市| 顺义区| 吴桥县| 佳木斯市| 百色市| 谢通门县| 哈尔滨市| 理塘县| 丹江口市| 波密县| 大港区| 莆田市| 邢台县| 佳木斯市| 多伦县| 扎兰屯市| 东莞市| 平顶山市| 阿巴嘎旗| 中西区| 永年县| 滕州市| 福安市| 同仁县| 双柏县| 琼中| 临泽县| 林口县| 宣威市| 伊宁市| 界首市| 彰化县| 新和县| 信阳市| 济阳县| 思茅市|