TERADATA:从递归查询中选择的SQL递归查询

时间:2018-04-19 08:31:44

标签: sql teradata recursive-query

我正在尝试使用Teradata多次执行递归 我的查询类似于以下内容,在引用query_2中的query_1并尝试运行它时会出现错误,指出query_1不存在。

------------------------------------
 trx    indx1   indx2   val
------------------------------------
 x1      1       1       a
 x1      1       2       b
 x1      1       3       c
 x1      2       1       d
...................................
-----------------------------------

我想连接不同层次结构的值 所以我想转

----------------
 trx        val
----------------
 x1       a/b/c/d

进入以下

Get-ADComputer

1 个答案:

答案 0 :(得分:0)

XMLAGG函数解决了问题

    SELECT TRX
        , TRIM(TRAILING '/' FROM (XMLAGG(TRIM(val)|| '/' ORDER BY indx1||indx2 ASC) (VARCHAR(10000)))) val
    FROM table_name
    GROUP BY 1,2

但是,我希望XMLAGG中的“order by”支持多个表达式,这样我们就不需要子查询来连接多层次的层次结构。

感谢donoeth

solution