gpt4 book ai didi

MySQL 查询 GROUP BY WHERE IN

转载 作者:行者123 更新时间:2023-11-29 01:21:48 24 4
gpt4 key购买 nike

我有一个像这样的表:

+------+--------+-----------+
| | name | type_id |
+------+--------+-----------+
| 1 | Bob | 3 |
| 2 | Tony | 2 |
| 3 | Sheila | 2 |
| 4 | Sarah | 8 |
| 5 | Tom | 7 |
+------+--------+-----------+

我想将我的 type_id 分组到一个名为“type”的新列中。 type_id 2 和 8 的值为“yes”,其他所有值为“no”,因此我的结果如下所示:

+------+--------+-----------+------+
| | name | type_id | type |
+------+--------+-----------+------+
| 1 | Bob | 3 | no |
| 2 | Tony | 2 | yes |
| 3 | Sheila | 2 | yes |
| 4 | Sarah | 8 | yes |
| 5 | Tom | 7 | no |
+------+--------+-----------+------+

这甚至可能吗,如果是的话,它叫什么,因为我已经搜索了关于“GROUP BY”和“JOINS”的文档,但看不到这样的解决方案。

最佳答案

您可以使用 case 来做到这一点:

SELECT *,CASE WHEN type_id IN (2,8) THEN 'yes' ELSE 'no' END as `type`
FROM yourTable

sqlfiddle demo

关于MySQL 查询 GROUP BY WHERE IN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19903940/

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