如何生成oraclesqlxml格式

lskq00tm  于 2021-08-09  发布在  Java
关注(0)|答案(1)|浏览(345)

我想在这个结果中生成xml格式的oraclesql。我的问题如下:

Select xmlelement(“main”,xmlelement(“id”,id)) from tableA

<main>
  <id>1</id>
  <id>2</id>
</main>

但我总是得到这个结果

<main>
  <id>1</id>
</main>
<main>
  <id>2</id>
</main>

帮帮忙谢谢
编辑:我只需要一个执行查询,而不是按行。

amrnrhlw

amrnrhlw1#

如果不希望结果集按行处理,则需要在多行上进行聚合。在处理数字时,可以使用聚合函数,如 SUM , MIN , MAX , AVG 等。;对于字符串,可以使用 LISTAGG 功能;但是对于xml数据,您需要 XMLAGG 功能:

SELECT XMLELEMENT(
         "main",
         XMLAGG(
           XMLELEMENT("id",id)
         )
       ) AS xml
FROM   tableA

对于您的示例数据:

CREATE TABLE tableA ( id ) AS
SELECT 1 FROM DUAL UNION ALL
SELECT 2 FROM DUAL

输出:

| XML                               |
| :-------------------------------- |
| <main><id>1</id><id>2</id></main> |

db<>在这里摆弄

相关问题