我有一个相当复杂的选择,它返回一个 id 数组。我现在想使用这个 id 数组
DELETE FROM cart_items WHERE id in (
SELECT id AS the_count
FROM cart_items
GROUP BY session_code
HAVING COUNT(session_code) > 100
);
我想做的是使用内部选择(有效)作为 IN 删除数组...
这段代码抛出错误:
“您无法在 FROM 子句中指定要更新的目标表‘cart_items’”
最佳答案
尝试使用子选择并提供新别名
DELETE FROM cart_items WHERE id in (
SELECT cart_items_todelete.id FROM (
SELECT id
FROM cart_items
GROUP BY session_code
HAVING COUNT(session_code) > 100
) cart_items_todelete
);
关于mysql - 将选择转换为数组以进行 DELETE FROM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18942921/