运算符应在DELETE上包含1列,但只能选择1列

问题描述 投票:1回答:1

我正在尝试从名为'lista_difusion_wp'的MySQL表中删除几行。我只需要删除表“ _clientes_nowp”上存在的列,因此我选择了两个表中的公共列。但是结果始终是相同的:操作数应包含1列。

这里是查询:

DELETE FROM
lista_difusion_wp
WHERE
lista_difusion_wp.cliente_id IN (
SELECT
id_cliente AS cliente_id 
FROM
_clientes_nowp) 

我只选择一列,但仍然遇到麻烦。你能帮我吗?

mysql select sql-delete
1个回答
0
投票

我无法重现您的问题;

DROP TABLE if exists lista_difusion_wp,_clientes_nowp;
create table lista_difusion_wp(cliente_id int);
create table _clientes_nowp(id_cliente int);

insert into lista_difusion_wp values (1),(2),(3);
insert into _clientes_nowp values (1),(3);

DELETE FROM lista_difusion_wp
WHERE lista_difusion_wp.cliente_id IN (
        SELECT
        id_cliente AS cliente_id 
        FROM
        _clientes_nowp) ;

select * from lista_difusion_wp;

+------------+
| cliente_id |
+------------+
|          2 |
+------------+
1 row in set (0.00 sec)

该错误似乎不是来自已发布的代码-请检查触发器。

© www.soinside.com 2019 - 2024. All rights reserved.