如何基于sql中的另一列连接两列

如何基于sql中的另一列连接两列,sql,oracle,Sql,Oracle,A、 B和C是列名B和C应基于列A连接起来,并应存储在两列中结果(A)和结果(B)结果与示例中的结果不完全相同,但类似的结果可能基于列A A B C Result(A) |Result(B) 1 All 9 1 | All~9-8 1 All 8 2 | Been~6 2 Been 6 3

A、 B和C是列名B和C应基于列A连接起来,并应存储在两列中结果(A)和结果(B)

结果与示例中的结果不完全相同,但类似的结果可能基于列A

A   B       C           Result(A)   |Result(B)
1   All     9                    1  |     All~9-8
1   All     8                    2  |     Been~6
2   Been    6                    3  |     Hai~5
3   Hai     5               
2   Been    6               

您也可以为此使用
组\u concat

    select a, b, concat(b,'~', concat_ws('-',c))
    from my_table 
    group by A,B

参考:

你需要更详细地描述这一点,因为你不清楚你想要什么。试着添加更多关于问题的描述,并解释你的要求,以便人们能够帮助你需要解释关于你所展示的结果如何产生/为什么产生的逻辑/规则,因为根本不清楚它们应该如何产生,B和C是列名,Result(A)和(B)是column names@SimonWoolf中的结果列名
SELECT A AS Result_A, CONCAT(B,'~', GROUP_CONCAT(C SEPARATOR '~')) AS Result_B FROM table  GROUP BY B