gpt4 book ai didi

mysql - 无法从另一个表中操作为 true 的表中删除多行

转载 作者:行者123 更新时间:2023-11-29 13:13:19 26 4
gpt4 key购买 nike

如何选择并删除所有这些行?

phpMyAdmin 给我:

#1242 - Subquery returns more than 1 row

DELETE FROM zoo_category_item WHERE (SELECT id FROM zoo_item WHERE params = '1')

最佳答案

我认为您需要在表之间建立一些连接。类似于:

DELETE FROM zoo_category_item
WHERE zoo_category_item.id in (SELECT id FROM zoo_item WHERE params = '1');

不过,我不知道相应列的名称。

您收到错误是因为子查询返回多个值。在 where 的上下文中,MySQL 需要一个标量子查询——一行,一列。

如果您想删除 zoo_category_item 中的所有行(如果该条件为真),那么您将执行以下操作:

DELETE FROM zoo_category_item
WHERE exists (SELECT id FROM zoo_item WHERE params = '1');

关于mysql - 无法从另一个表中操作为 true 的表中删除多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21815665/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com