例: XMLAGGを使用した複数の行の集約によるXML値の生成 - Teradata Database - Teradata Vantage NewSQL Engine - XMLAGG関数の使用法を示す例。

Teradata Vantage™ XMLデータ型

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/jki1512081750759.ditamap
dita:ditavalPath
ja-JP/jki1512081750759.ditaval
dita:id
B035-1140
Product Category
Software
Teradata Vantage
以下の問合わせでは、Department要素を構成します。これには、name属性があり、また子要素としてemp(従業員のリスト)があります。従業員の姓の順序でソートします。WORKDEPTごとにそれぞれ1つのDepartment要素が作成されます。
SELECT XMLSERIALIZE(DOCUMENT XMLDOCUMENT
   (XMLELEMENT(NAME "Department",
      XMLATTRIBUTES(E.WORKDEPT AS "name"),
      XMLAGG(XMLELEMENT ( NAME "emp", E.LASTNAME)
      ORDER BY E.LASTNAME)
   )) AS CLOB(200)) AS "dept_list" 
   FROM EMPLOYEE E
   WHERE E.WORKDEPT IN ('C01', 'E21')
GROUP BY WORKDEPT;