PARAMETER スカラー関数
PARAMETER 関数は、db2-fn:sqlquery 関数の呼び出しの一部として XQuery によって値が動的に提供される SQL ステートメント内の位置を表します。
スキーマは SYSIBM です。
- integer-constant
- db2-fn:sqlquery の引数の値の位置の索引を指定する整数定数です。 値の範囲は、1 から db2-fn:sqlquery SQL ステートメントで指定された引数の総数まででなければなりません (SQLSTATE 42815)。
PARAMETER 関数は、db2-fn:sqlquery 関数の呼び出しの一部として XQuery によって値が動的に提供される SQL ステートメント内の位置を表します。 PARAMETER 関数の引数は、db2-fn:sqlquery 関数の実行時に PARAMETER 関数に代入される値を決定します。 PARAMETER 関数によって提供される値は、同じ SQL ステートメント内で複数回参照できます。
この関数は、XQuery 式の db2-fn:sqlquery 関数のストリング・リテラル引数に含まれる全選択でのみ使用可能です (SQLSTATE 42887)。
例
以下の例では、db2-fn:sqlquery 関数呼び出しは、1 つの PARAMETER 関数呼び出しと XQuery 式
$po/@OrderDate
(注文日付属性) を使用します。 PARAMETER 関数呼び出しは、注文日属性の値を戻します。 xquery
declare default element namespace "http://posample.org";
for $po in db2-fn:xmlcolumn('PURCHASEORDER.PORDER')/PurchaseOrder,
$item in $po/item/partid
for $p in db2-fn:sqlquery(
"select description from product where promostart < PARAMETER(1)",
$po/@OrderDate )
where $p//@pid = $item
return
<RESULT>
<PoNum>{data($po/@PoNum)}</PoNum>
<PartID>{data($item)} </PartID>
<PoDate>{data($po/@OrderDate)}</PoDate>
</RESULT>
この例は、プロモーション開始日より後に販売されたすべての部品に関する購入 ID、部品 ID、および購入日を戻します。