经常我们会删除 非系统管理权限的数据
可以会这样写:
DELETE
FROM
tb_sys_permission
WHERE id NOT IN
(SELECT
id
FROM
tb_sys_permission
WHERE description LIKE ('%系统管理%'))
恭喜你,入坑了
其实应该要这样写
DELETE
FROM
tb_sys_permission
WHERE id NOT IN
(SELECT
id
FROM
(SELECT
id
FROM
tb_sys_permission p
WHERE p.description LIKE ('%系统管理%')) b)
还要再查询外面包多一层临时表才能删除,这个也是MYSQL重点考察删除重复数据的问题