gpt4 book ai didi

具有多个 bool 条件的mysql内部连接查询

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

我有以下两个表

 Table 1: creatives
creative_id creative_name
1 xyz
2 pqr
3 abc

Table 2: term_relationships
creative_id term_id
1 1
1 2
1 3
2 1
2 2
2 4
3 1
3 2
3 3

我想连接以上 2 个表以获取包含必须存在 term_id = 1 AND 2 AND 3 的广告素材的查询输出。对于上述示例,只有广告素材 1(又名 xyz)和 3(又名 abc)必须出现在查询输出中,因为广告素材 2 不满足上述条件。

所以

SELECT * 
FROM term_id INNER JOIN
creatives ON term_id.creative_id = creatives.creative_id
WHERE ????

where 子句应该是什么样的?

最佳答案

执行此操作的一种方法是计算匹配项的数量,并检查它的总和是否等于您想要的匹配项数量:

SELECT *
FROM creatives
WHERE creative_id IN (SELECT creative_id
FROM term_relationship
WHERE term_id IN (1, 2, 3)
GROUP BY creative_id
HAVING COUNT(*) = 3)

关于具有多个 bool 条件的mysql内部连接查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30723861/

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