使用sql Developer单行退出

问题描述 投票:0回答:2

我的要求是如果两个具有相同日期的表需要在单行中给出 eq 的输出

| Column A | Column B |

| -------- | -------- |

| Cell 1   | Cell 2   |

| Cell 3   | Cell 4   |





| Column AA | Column BB |

| -------- | -------- |

| Cell 1   | Cell 5   |

| Cell 3   | Cell 6   |



Output should be as 



| Column A | Column B       |

| -------- | --------       |

| Cell 1   | Cell 2,Cell 5  |

| Cell 3   | Cell 4,Cell 6  |

这可能吗

sql plsqldeveloper
2个回答
0
投票

您需要

UNION
GROUP BY
,如下:

SELECT colA, listagg(colB,',') WITHIN GROUP (order by colB) from
(SELECT colA, colB from table1
UNION
SELECT colAA, colBB from table2)
GROUP BY colA;

注意:使用 Oracle 特定语法。


0
投票

在 Postgres 9+ 上,我们可以使用联合查询以及

STRING_AGG()
:

SELECT A, STRING_AGG(B, ',') AS B
FROM
(
    SELECT A, B FROM T1
    UNION ALL
    SELECT AA, BB FROM T2
) t
GROUP BY A;
© www.soinside.com 2019 - 2024. All rights reserved.