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

Teradata Vantage™ XMLデータ型

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Release Date
2019年3月
Content Type
プログラミング リファレンス
Publication ID
B035-1140-162K-JPN
Language
日本語 (日本)
以下の問合わせでは、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;