国产探花免费观看_亚洲丰满少妇自慰呻吟_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)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乐昌市| 林周县| 平果县| 德保县| 孟村| 德兴市| 兴国县| 焦作市| 北票市| 昔阳县| 噶尔县| 武夷山市| 依安县| 霍城县| 咸宁市| 湟源县| 沁水县| 铜陵市| 淮北市| 铁岭市| 宝丰县| 黔西县| 无极县| 鄂托克前旗| 嘉兴市| 台州市| 新民市| 定兴县| 白玉县| 洛川县| 桂阳县| 威海市| 财经| 莲花县| 西林县| 黄石市| 陇川县| 奉节县| 屏山县| 洞口县| 海林市|