gpt4 book ai didi

mysql - 如何将 IF ELSE 写入此查询以使其工作?

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

表格看起来像这样:(是的,它们是 & 符号。忽略破折号)

ID-VALUE-NUM
-1-YES----2-
-1-NO-----3-
-2-YES----1-
-2-NO-----1-
-3-&&&----1-
-3-&------2-
-3-&&-----2-

我需要做什么:

对于每个 ID,我需要获取具有最高 NUM 的值,在平局且 VALUE 具有 的情况下>&s 然后它会选择最短的。如果值为 YES/NO,那么它将选择 YES

想要的结果

ID-VALUE-NUM
-1-NO-----3-
-2-YES----1-
-3-&------2-

我想我必须在某处放置一个 IF 语句,但我不确定如何。

最佳答案

这是一种方法。连接查找最大 num。然后 select 使用逻辑根据您的规则选择正确的值:

select t.id,
(case when count(*) = 1 then min(value)
when max(value like '%&%') > 0 then min(value)
when max(value = 'Yes') > 0 and max(value = 'No') > 0 then 'Yes'
else max(value)
end) as value,
t.num
from t join
(select id, max(num) as maxnum
from t
group by id
) tm
on t.id = tm.id and t.num = tm.maxnum
group by t.id, t.num

关于mysql - 如何将 IF ELSE 写入此查询以使其工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18139419/

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