gpt4 book ai didi

mysql - 将多行合并为一行

转载 作者:行者123 更新时间:2023-11-29 09:43:44 26 4
gpt4 key购买 nike

我有 2 张 table :

TBL_SERVICE:
ID SERVICE_NAME
-- ------------
1 servicea
2 serviceb
3 servicec

TBL_OPTIONS:
ID TYPE VALUE ID_SERVICE
-- ---- ----- ----------
1 AAA X 1
2 BBB Y 1
3 CCC Z 1
4 AAA S 2
5 BBB X 2
6 AAA T 3

现在我需要生成这样的行:

ID_SERVICE   TYPE_AAA  TYPE_BBB  TYPE_CCC
---------- -------- -------- --------
1 X Y Z
2 S X
3 T

目前我使用 php 代码执行此操作,但我需要在 sql 查询中执行此操作。在mysql中可以吗?

最佳答案

您可以使用条件聚合:

select id_service,
max(case when type = 'AAA' then value end) as type_aaa,
max(case when type = 'BBB' then value end) as type_bbb,
max(case when type = 'CCC' then value end) as type_ccc
from t
group by id_service;

关于mysql - 将多行合并为一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56096026/

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