gpt4 book ai didi

postgresql - Postgres查询问题,需要选择唯一值

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

嗨,我有以下查询,但它并没有完全按照我的预期去做

SELECT DISTINCT(c.id) AS "CLIENT CODE",c.name AS "CLIENT NAME", count(cmp.id) as "NUMBER OF CAMPAIGNS ON LIVE AND PENDING" FROM clients AS c ,campaigns AS cmp WHERE cmp.clientid = c.id AND cmp.status NOT IN('S','C','X','?') GROUP BY c.name,c.id ORDER BY c.name;

我想要实现的是以下内容。我在 postgres 中有一个客户表和一个事件表。客户有事件,因此一个客户可以有 100 个事件。客户可以有状态为 L,C, X 或只有 L,C,P 的事件。只有 L,P,C,X,S,?关注状态。现在我希望查询仅返回事件状态为 L 和 P 的客户,而不返回其他客户。

换句话说,只有事件状态为 L 和 P 的客户应该返回,如果客户有 X、C 和 L 和 P,则不应返回。

希望这是有道理的并且是可能的

最佳答案

SELECT  *
FROM clients
WHERE id IN
(
SELECT clientid
FROM campaigns
WHERE status IN ('L', 'P')
)
AND id NOT IN
(
SELECT clientid
FROM campaigns
WHERE status NOT IN ('L', 'P')
)

关于postgresql - Postgres查询问题,需要选择唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4155827/

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