-- 错误写法
delete from tab_name t1 where t1.col_name = val;
-- 小例子
DELETE
FROM
priv_user_role pur
WHERE
EXISTS (
SELECT
pr.id
FROM
priv_role pr
WHERE
pr.platform_id = 2
AND pur.role_id = pr.id
)
-- 运行报错:
WHERE
EXISTS (
SELECT
pr.id
FROM
priv_role pr
WHERE
pr.platform_id = 2
AND pur.role_id = pr.id
)
[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'pur
WHERE
EXISTS (
SELECT
pr.id
FROM
priv_role pr
WHERE
' at line 3
-- delete 是可以取别名的,准确写法
delete a from table1 a where a.status=2
and EXISTS (select b.id from table2 b where b.fid=a.id)