gpt4 book ai didi

mysql - Where In 子句出现错误 #1224 操作数应仅包含 1 列

转载 作者:行者123 更新时间:2023-11-29 10:53:43 25 4
gpt4 key购买 nike

下面的查询对于列名和表名是正确的。客户可以有两种有效的联系方式(电话号码和电子邮件)。电话号码和电子邮件地址位于父表客户的子表中。我显然遗漏了一些关于如何使用 IN 子句的内容。有人可以帮助我吗?

  SELECT
DISTINCT cm.comm_method, cm.customer_id
FROM contact_method cm
WHERE cm.is_active = 'Y'
AND cm.customer_id IN
(SELECT oc.customer_id, c.name
FROM customer c
INNER JOIN org_customer oc ON c.customer_id = oc.customer_id
WHERE oc.org_id = $org_id)

最佳答案

IN 子句的工作方式类似于 WHERE X in (X, Y, Z)。其中,X, Y, Z 是要查看IN 的内容列表。您所拥有的是WHERE customer_name in ((customer_id_1, customer_name_1), (customer_id_2, customer_name_2)

问题在于您将客户名称包含在要查看的内容列表中。IN。错误消息告诉您要查找的内容列表 IN 必须只有 1 列,因此只需从子查询的 SELECT 中取出 c.name 即可。

关于mysql - Where In 子句出现错误 #1224 操作数应仅包含 1 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43330645/

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