来自两列的 SQLITE group_concat 配对值
Posted
技术标签:
【中文标题】来自两列的 SQLITE group_concat 配对值【英文标题】:SQLITE group_concat pairing values from two columns 【发布时间】:2018-09-23 10:52:42 【问题描述】:我有一张这样的桌子:
id key value
244574 16 999
244574 18 999
244574 54 174
214808 16 662
214808 17 808
214808 33 1
214808 60 2
214809 16 902
214809 17 1103
214809 33 1
214809 60 2
218965 19 808
218965 21 662
218965 33 1
218965 60 8
218966 19 1103
218966 21 902
218966 33 1
218966 60 8
小提琴:click here
现在我尝试获取一个列表,其中有一个包含键和值对的列,应该如下所示:
id key_value_pairs
214808 [16,662;17,808;33,1;60,2]
214809 [16,902;17,1103;33,1;60,2]
218965 [19,808;21,662;33,1;60,8]
218966 [19,1103;21,902;33,1;60,8]
244574 [16,999;18,999;54,174]
我的查询:
select
id,
'[' || group_concat(key, ',') ||
';' || group_concat(value, ',') || ']' as key_value_pairs
from items_attributes
GROUP BY id
...这导致您可以在我上面链接的小提琴中看到。
有人碰巧有解决这个问题的办法吗?
提前致谢!
最好的问候, 安德烈亚斯
【问题讨论】:
【参考方案1】:得到:-
我用过:-
select
id,
'[' || group_concat(key||","||value, ';')||']' as key_value_pairs
from items_attributes
GROUP BY id
【讨论】:
像魅力一样工作。非常感谢! =)以上是关于来自两列的 SQLITE group_concat 配对值的主要内容,如果未能解决你的问题,请参考以下文章