gpt4 book ai didi

带组和状态的 SQL Select 查询 (SQL server 2008)

转载 作者:行者123 更新时间:2023-12-02 08:44:55 24 4
gpt4 key购买 nike

我有一个具有以下结构的表

id   g_id   name    status
---------------------------------------
1 111 item1 1
2 111 item2 1
3 111 item3 1

6 113 item1 -1
7 113 item2 1
8 113 item3 1

9 114 item1 1
10 114 item2 2

状态可以包含值,成功:1失败:-1进行中:2

Need the following output 
GroupID Status
------------------
111 Success
113 Failed
114 In-Progress

如果组中有一个是-1,结果应该是失败的,如果全部是1,那么结果应该是成功的。此外,如果一些是 1,其余是 2,结果应该是 In Progress。我可以选择上述结果的最佳方式是什么?

最佳答案

SQL FIDDLE EXAMPLE

select
g_id as GroupID,
case
when min(status) = -1 then 'failed'
when max(status) = 2 and min(status) = 1 then 'in progress'
when max(status) = 1 and min(status) = 1 then 'success'
end as Status
from table1
group by g_id

关于带组和状态的 SQL Select 查询 (SQL server 2008),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13176420/

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