select 查询一对多关系 table?

select query for one-to-many relations table?

我有2张桌子。这两个表是一对多的关系。

TABLE - A

column1 column2
1       label1
2       label2

TABLE - B

Bcolumn1 Bcolumn2 Bcolumn3
1        value1   value4
1        value2   value5
2        value3   value6

结果TABLE


column1 column2 json
1       label1  [[value1,value4],[value2,value5]]
2       label2  [[value3,value6]]

我想使用 TABLE - A 和 TABLE - B 获得结果 TABLE1。

我怎样才能得到这个结果?

谢谢。

我们可以在这里使用 GROUP_CONCAT:

SELECT
    a.column1,
    a.column2,
    '[' || GROUP_CONCAT('[' || b.Bcolumn2 || ',' || b.Bcolumn3 || ']') || ']' AS json
FROM TableA a
LEFT JOIN TableB b
    ON b.Bcolumn1 = a.column1
GROUP BY
    a.column1,
    a.column2;

Demo