ストリームデータ処理基盤 uCosminexus Stream Data Platform - Application Framework アプリケーション開発ガイド

[目次][索引][前へ][次へ]

4.4.8 HAVING句

<この項の構成>
(1) 形式
(2) 機能
(3) オペランド
(4) 構文規則
(5) 注意事項
(6) 使用例

(1) 形式

HAVING句::=HAVING▲<探索条件>

(2) 機能

FROM句,WHERE句,またはGROUP BY句によって取得されるリレーションに対して,探索条件を指定します。HAVING句の探索条件では,HAVING句中に指定した探索条件によって論理演算を実行し,真の結果だけをリレーションとして取得します。

HAVING句を指定する場合は,HAVING句によって取得されるリレーションがSELECT句の対象となります。

(3) オペランド

<探索条件>

探索条件の指定については,「4.4.16 探索条件」を参照してください。

探索条件中に列指定を指定する場合は,グループ化列を指定するか,または集合関数の引数として指定してください。グループ化列については,「4.4.7 GROUP BY句」,集合関数については「4.4.20 集合関数」を参照してください。

(4) 構文規則

HAVING句中に指定した探索条件の結果が真となるグループが選択されます。

(5) 注意事項

HAVING句を省略すると,先行するGROUP BY句,またはFROM句の結果の全グループが選択されます。

(6) 使用例

リレーションs1の列b,cをグループ化し,列aの平均値が10より大きい列a,b,cのデータを出力します。下線部がHAVING句の部分です。

REGISTER QUERY q1 SELECT AVG(s1.a) AS a1,s1.b,s1.c FROM s1[ROWS 100]
                  GROUP BY s1.b,s1.c HAVING AVG(s1.a) > 10;