gpt4 book ai didi

mysql - 有没有一种方法可以使用一列进行 GROUP BY,但对于给定的组,它可以等于一组值?

转载 作者:行者123 更新时间:2023-11-29 02:33:07 24 4
gpt4 key购买 nike

有没有一种方法可以使用一个列进行 GROUP BY,但对于给定的组,一组值可能相等?

例如,假设我有记录:

id = 1, quantity = 40, type = 1
id = 2, quantity = 50, type = 2
id = 3, quantity = 20, type = 1
id = 4, quantity = 30, type = 3
id = 5, quantity = 60, type = 3

我想将类型 1 和类型 2 归为一组,并将类型 3 单独归为一组。有没有在 MySQL 中执行此操作的简单方法,还是我最好在获得结果后执行此操作?

最佳答案

当然,您可以使用 CASE 语句创建自定义组:

  select case when id in (1,2) 
then '1,2'
else id
end as custom_id_group
...
group by case when id in (1,2)
then '1,2'
else id
end

编辑:
在 RDBMS 中,通过别名在 GROUP BY 子句中使用 CASE 语句的结果并不受普遍支持,但较新版本的 MySQL (>=5) 将支持它。

关于mysql - 有没有一种方法可以使用一列进行 GROUP BY,但对于给定的组,它可以等于一组值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9778908/

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