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 の使用法 » データベースにおける XML » データベースにおける XML の使用 » クエリ結果を XML として取得する

 

FOR XML 句を使用してクエリ結果を XML として取り出す

SQL Anywhere では、SELECT 文内で FOR XML 句を使用して、データベースに対し SQL クエリを実行し、結果を XML 文書として返すことができます。XML 文書は、XML 型です。

XML データ型については、XML データ型を参照してください。

FOR XML 句は、サブクエリ、GROUP BY 句または集合関数のあるクエリ、ビュー定義など、どのような SELECT 文内でも使用できます。

FOR XML 句の使用方法の例については、FOR XML の例を参照してください。

SQL Anywhere は、FOR XML 句を使用して生成された XML 文書に対しスキーマは生成しません。

FOR XML 句内で、生成される XML のフォーマットを制御する 3 つの XML モードのうちの 1 つを指定できます。

  • RAW   クエリに一致する各ローを <row> XML 要素として、各カラムを属性として表します。

    詳細については、FOR XML RAW の使用を参照してください。

  • AUTO   クエリ結果をネストされた XML 要素として返します。select リスト内で参照される各テーブルは、XML 内で要素として表されます。要素のネスト順は、select リスト内のテーブルの順序に基づきます。

    詳細については、FOR XML AUTO の使用を参照してください。

  • EXPLICIT   希望するネストに関する情報を含むクエリを記述できます。そのため、生成される XML の形式を制御できます。

    詳細については、FOR XML EXPLICIT の使用を参照してください。

次の項では、FOR XML 句の 3 つのモードに共通する、バイナリ・データ、NULL 値、無効な XML 名に関連する動作について説明します。また、FOR XML 句の使用例も示します。


FOR XML とバイナリ・データ
FOR XML と NULL 値
不正な XML 名のエンコーディング
FOR XML の例