首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

mysql error 1093 解决办法

2013-01-17 
mysql error 1093 解决方法mysql select * from t+----+| id |+----+| 1 || 2 || 3 || 4 || 5 || 6 || 7

mysql error 1093 解决方法

mysql> select * from t;+----+| id |+----+| 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 || 10 |+----+10 rows in set (0.00 sec)



mysql> delete from t where id in (select id from t where id < 5);ERROR 1093 (HY000): You can't specify target table 't' for update in FROM clausemysql> 


这样删除将报错,更改SQL语句为

mysql> delete  from t where id in (select * from (select id from t where id < 5) tmp);Query OK, 4 rows affected (0.00 sec)


以这样的形式即可删除。

再优化之,改为表连接模式:

mysql> delete t from t join (select id from t where id < 5) tmp on t.id=tmp.id;Query OK, 4 rows affected (0.01 sec)


转自 http://hcymysql.blog.51cto.com/5223301/895517

热点排行