Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - SQL リファレンス » SQL の使用 » SQL 関数 » SQL 関数 (P ~ Z)

 

XMLGEN 関数 [文字列]

XQuery コンストラクタに基づいて XML 値を生成します。

構文
XMLGEN( xquery-constructor, content-expression [ AS variable-name ],... )
パラメータ
  • xquery-constructor   XQuery コンストラクタ。XQuery コンストラクタは、XQuery 言語で定義された項目です。XQuery 式に基づいて XML 要素を構成するための構文を提供します。xquery-constructor 引数は、1 つ以上の変数参照を持つ整形式の XML ドキュメントにしてください。変数参照は中かっこで囲まれます。プレフィクス $ が必要で、前後に空白スペースは不要です。次に例を示します。
    SELECT XMLGEN( '<a>{$x}</a>', 1 AS x );

  • content-expression   変数。content-expression 引数は、複数指定できます。オプションの variable-name 引数は、変数の名前を付ける際に使用されます。次に例を示します。
    SELECT XMLGEN( '<emp EmployeeID="{$EmployeeID}"><StartDate>{$x}</StartDate></emp>',
                   EmployeeID, StartDate 
                   AS x )
    FROM Employees;

戻り値

XML

備考

XQuery 仕様で定義されている計算コンストラクタは、XMLGEN 関数でサポートされません。

XMLGEN 関数を含むクエリを実行すると、BINARY、LONG BINARY、IMAGE、VARBINARY の各カラムのデータは、自動的に base64 エンコード形式で返されます。

データ型が XML ではない場合、要素内容は必ずエスケープされます。無効な XML 要素名と属性名もエスケープされます。

エスケープと XMLGEN 関数については、無効な名前と SQL/XMLを参照してください。

参照
標準と互換性
  • SQL/XML ドラフト規格の一部。

次の例は、各従業員の <emp> 要素、<Surname> 要素、<GivenName> 要素、<StartDate> 要素を生成します。

SELECT XMLGEN( '<emp EmployeeID="{$EmployeeID}">
                  <Surname>="{$Surname}"</Surname>
                  <GivenName>="{$GivenName}"</GivenName>
                  <StartDate>="{$StartDate}"</StartDate>
               </emp>',
               EmployeeID,
               Surname,
               GivenName,
               StartDate
              ) AS employee_list
FROM Employees;