ページの先頭行へ戻る
Symfoware Server V10.0.0 アプリケーション開発ガイド(共通編)

12.4.13 ある検索結果がある条件を満たしているかを判定する

製品情報から、製品名(name)が“テレビ”で、在庫(stock)が0より多い製品があるかを判定します。その結果が真の場合、種類(kind)が“家電製品”のデータをすべて返却します。

以下にXQuery式と、返却されるXMLデータを示します。

XQuery式
if (some $prod in /products/product[item/name = "テレビ"] satisfies  $prod/stock > 0 ) then /products/product[kind/text() = "家電製品"] else ()
返却結果
<product id="0001">
  <kind>家電製品</kind>
  <item>
    <name>テレビ</name>
    <code>XA-0054</code>
  </item>
  <value>190000</value>
  <stock>10</stock>
  <release>2008-03-03</release>
</product>
<product id="0002">
  <kind>家電製品</kind>
  <item>
    <name>パソコン</name>
    <code>XB-3984</code>
  </item>
  <value>220000</value>
  <stock>25</stock>
  <release>2008-02-10</release>
</product>
<product id="0003">
  <kind>家電製品</kind>
  <item>
    <name>ドライヤー</name>
    <code>XC-0883</code>
  </item>
  <value>9800</value>
  <stock>0</stock>
  <discount>-5000</discount>
  <release>2007-12-10</release>
</product>