SELECT 文節

SELECT 文節は、FROM 文節内で定義された 単一の識別変数か、 オブジェクト参照またはコンテナー管理パーシスタンス (CMP) 値を求める 単一値のパス式の、いずれかで構成されます。 DISTINCT キーワードを使用し、重複参照を取り除くことができます。

finder および select 照会について、SELECT 文節の構文は以下の例に示されています。
SELECT  [  ALL | DISTINCT  ]
		{ single-valued-path-expression  |  aggregation expression  |  OBJECT ( identification-variable )  }

finder メソッドを定義する照会の場合、その照会は、 finder メソッドに関連付けられたホームと一致したオブジェクト型を戻す必要があります。 例えば、部門ホームの finder メソッドは、従業員オブジェクトを戻すことはできません。

例: SELECT 文節

下記は、John より報酬を得ているすべての従業員を検出します。
SELECT OBJECT(e) FROM EmpBean ej, EmpBean e
WHERE  ej.name = 'John'  and e.salary > ej.salary
下記は、1 人以上の従業員が 20000 より少ない報酬を得ているすべての部門を検出します。
SELECT DISTINCT  e.dept  FROM EmpBean e where e.salary < 20000
select メソッド照会は、下記のように、任意の値を求めるパス式を持つことができます。
SELECT  e.dept.name  FROM EmpBean e where e.salary < 2000

上記の照会は、20000 より少ない報酬を得ている従業員のいる部門の名前値のコレクションを戻します。

select メソッド照会は、集約値を戻します。
SELECT  avg(e.salary)  FROM EmpBean e
[AIX Solaris HP-UX Linux Windows][z/OS]

例: 有効な動的照会

動的照会の構文は次のとおりです。
SELECT { ALL | DISTINCT }  [ selection , ]*  selection
selection  ::= { expression   |  scalar-subselect [[AS] id ] }

scalar-subselect は、単一の値を戻す副選択です。

下記は、動的照会の例です。
SELECT e.name, e.salary+e.bonus as total_pay from EmpBean e
SELECT  SUM( e.salary+e.bonus) from EmpBean e where e.dept.deptno = ?1

トピックのタイプを示すアイコン 概念トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cque_select
ファイル名:cque_select.html