gpt4 book ai didi

mysql - 如何找到与定义值匹配的确切组?

转载 作者:可可西里 更新时间:2023-11-01 08:20:57 25 4
gpt4 key购买 nike

我简化了表格以便于理解。

我有一个包含组的表,并且一个组存在多个值。这是表格:

VALUE | GROUP
A | 1
B | 1
A | 2
C | 2
B | 3
A | 4
B | 4
A | 5
B | 5
C | 5

我想为我的查询提供值,我以编程方式构建并找到与这些值匹配的确切组。

例如,如果我为我的查询提供值 A 和 B,我希望结果组 1 和 4

A  ---------------> null 
A and B ----------> 1 and 4
A , B and C ------> 5
B ---------------> 3
A and C ----------> 2
C ----------------> null

最佳答案

您可以使用如下查询(假设值、组对唯一):

select `GROUP`
from MyTable
group by `GROUP`
having count(`VALUE`) = count(case when `VALUE` IN ('a','b') then 1 end)
and count(case when `VALUE` IN ('a','b') then 1 end) = @Count;

('a','b') 是您要测试的值列表,@Count 是您测试中不同值的计数检查集(在本例中为 2)。

演示:http://www.sqlfiddle.com/#!2/78def/13

关于mysql - 如何找到与定义值匹配的确切组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10851229/

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