Fra*_*lea 0 mysql subquery delete-row
我有一个表delete_requests,其中我存储了我的users表条目的删除请求的id.是否可以使用delete_requests中的信息作为条件从用户中删除?
我的问题是,结果集通常不会限制在一行,而是返回几行.
DELETE FROM users WHERE id=(SELECT id FROM delete_requests)
Run Code Online (Sandbox Code Playgroud)
所以MySQL抱怨:
#1242 - Subquery returns more than 1 row
Run Code Online (Sandbox Code Playgroud)
这可以在一个语句中完成而不将逻辑放入正在执行的应用程序中吗?
使用IN子句
DELETE FROM users WHERE id IN (SELECT id FROM delete_requests)
Run Code Online (Sandbox Code Playgroud)