我有两个这样的表:
小提琴:click here
我的问题是:
select
f.id,
'{{' || group_concat(f.key||','||ifnull(f.value,'NULL'), '},{')||'}}' as
key_value_pair_1,
'{{' || group_concat(r.key||','||ifnull(r.value,'NULL'), '},{')||'}}' as
key_value_pair_2
FROM items_functions as f
LEFT JOIN items_functions_2 as r ON f.id = r.id
GROUP BY f.id但这导致了一种奇怪的行为。当你运行上面的链接小提琴时,所有的结果都会多次显示出来。
但我想要的是这样的结果:
id key_value_pair_1 key_value_pair_2
214808 {{16,662},{17,808},{33,1},{60,2}} {{16,662},{17,808},{33,1},{60,2}}
214809 {{16,902},{17,1103},{33,1},{60,2}} {{16,902},{17,1103},{33,1},{60,2}}
218965 {{19,808},{21,662},{33,1},{60,8}} {{19,808},{21,662},{33,1},{60,8}}
218966 {{19,1103}{21,902},{33,1},{60,8}} {{19,1103},{21,902},{33,1},{60,8}}
244574 {{16,999},{18,999},{54,174}} {{16,999},{18,999},{54,174}}我想我的查询必须调整一下。:)
如果有人碰巧对此有解决方案,那就太棒了。
提前感谢!
致以最好的问候,安德烈亚斯
发布于 2018-04-13 20:29:34
我相信以下内容将会满足您的需求:
SELECT
p1.id, p1.kvp1, p2.kvp2
FROM
(
SELECT
id,
'{{' || group_concat(key||','||ifnull(value,'NULL'), '},{')||'}}'
AS kvp1
FROM items_functions GROUP BY id
)
AS p1
JOIN
(
SELECT
id,
'{{' || group_concat(key||','||ifnull(value,'NULL'), '},{')||'}}'
AS kvp2
FROM items_functions_2 GROUP BY id
)
AS p2
ON p1.id = p2.id它产生:-

https://stackoverflow.com/questions/49814183
复制相似问题