MySQL 删除
原文:https://www.cnblogs.com/tongxiaoda/p/7910526.html
- 被删除的表不能出现在查询子句的子查询中;
-
delete from somelog where user='jcole' order by timestamp_column limit 1; delete t1,t2 from t1 inner join t2 inner join t3 where t1.id=t2.id and t2.id=t3.id; delete from t1,t2 using t1 inner join t2 inner join t3 where t1.id=t2.id and t2.id=t3.id;
对于多表删除语句,如果想对表使用别名,则只能在table_references子句中使用
delete a1,a2 from t1 as a1 inner join t2 as a2 where a1.id=a2.id; delete from a1,a2 using t1 as a1 inner join t2 as a2 where a1.id=a2.id;
(1)单表
DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name
[PARTITION (partition_name [, partition_name] ...)]
[WHERE where_condition]
[ORDER BY ...]
[LIMIT row_count]
(2)多表
DELETE [LOW_PRIORITY] [QUICK] [IGNORE]
tbl_name[.*] [, tbl_name[.*]] ...
FROM table_references
[WHERE where_condition]
DELETE [LOW_PRIORITY] [QUICK] [IGNORE]
FROM tbl_name[.*] [, tbl_name[.*]] ...
USING table_references
[WHERE where_condition]