例
x_table表にて、xcolというXML列を検索して、age属性が20より大きいstudents要素を返すには次の文を書きます。
SELECT ID,
XMLSERIALIZE(
XMLQUERY('//student[@age>20]' PASSING BY REF xcol EMPTY ON EMPTY)
AS VARCHAR(50))
FROM x_table
この問合せでは、XMLQUERY演算子が実際に結果を返すか否かにかかわらず、結果にはx_tableの全行毎に結果行があります。
x_table表にてxcolというXML列を検索して、BCという名前の生徒の年齢を返すには、次の文を書きます。SELECT ID,
XMLSERIALIZE(
XMLQUERY('string(//student[text() = "BC"]/@age)' PASSING BY REF xcol EMPTY ON EMPTY)
AS VARCHAR(50))
FROM x_table
WHERE
XMLEXISTS('//student[text() = "BC"]' PASSING BY REF xcol)
この問合せでは結果には、x_table中のBCという名前の生徒の行のみあります。