Hitachi

Hitachi Advanced Data Binder SQLリファレンス


6.9.3 導出列名の有効範囲

導出列名の有効範囲の例を次の表に示します。

表6‒17 導出列名の有効範囲の例(GROUP BY句の指定がない場合)

SQL文の例

有効範囲

C1

C2

C3

DC3

C4

SELECT "C1","C2"

×

×

[図データ]FROM "T1",

×

×

[図データ][図データ](SELECT *

×

×

×

×

[図データ][図データ][図データ]FROM "T2"

×

×

×

×

[図データ][図データ][図データ]WHERE "C3"=100)

×

×

×

×

[図データ][図データ]"Y"("DC3")

×

×

×

×

[図データ]WHERE "C1"=100 AND

×

×

[図データ][図データ][図データ][図データ]"C2"=ANY

×

×

[図データ][図データ][図データ][図データ][図データ][図データ][図データ](SELECT "C4"

×

×

×

×

[図データ][図データ][図データ][図データ][図データ][図データ][図データ][図データ]FROM "T3"

×

×

[図データ][図データ][図データ][図データ][図データ][図データ][図データ][図データ]WHERE "DC3"="C4")

×

(凡例)

○:有効範囲内です。

×:有効範囲外です。

T1,T2,T3:表識別子

C1,C2:T1の列名

C3T2の列名

C4T3の列名

Y:相関名

DC3:導出表Yの導出列名

表6‒18 導出列名の有効範囲の例(GROUP BY句の指定がある場合)

SQL文の例

有効範囲

C1

C2

GC2

C3

DC3

C4

C5

SELECT "C1","GC2"

×

×

×

[図データ]FROM "T1",

×

×

×

×

[図データ][図データ](SELECT *

×

×

×

×

×

×

[図データ][図データ][図データ]FROM "T2"

×

×

×

×

×

×

[図データ][図データ][図データ]WHERE "C3"=100)

×

×

×

×

×

×

[図データ][図データ]"Y"("DC3")

×

×

×

×

×

×

[図データ]WHERE "C1"=100 AND

×

×

×

×

[図データ][図データ][図データ][図データ]"C2"=ANY

×

×

×

×

[図データ][図データ][図データ][図データ][図データ](SELECT "C4"

×

×

×

×

×

×

[図データ][図データ][図データ][図データ][図データ][図データ]FROM "T3"

×

×

×

[図データ][図データ][図データ][図データ][図データ][図データ]WHERE "DC3"="C4")

×

×

×

[図データ]GROUP BY "C1","C2"+100 AS "GC2"

×

×

×

×

[図データ]HAVING "C1"=100 AND

×

×

×

[図データ][図データ]"GC2"=ANY

×

×

×

[図データ][図データ][図データ](SELECT "C5"

×

×

×

×

×

×

[図データ][図データ][図データ][図データ]FROM "T4"

×

×

×

×

×

[図データ][図データ][図データ][図データ]WHERE SUM("DC3")="C5")

×

×

×

(凡例)

○:有効範囲内です。

△:有効範囲内ですが,グループ化列ではないため,集合関数の引数中に限り指定できます。

×:有効範囲外です。

T1,T2,T3,T4:表識別子

C1C2T1の列名

C3T2の列名

C4T3の列名

C5T4の列名

GC2:グループ化列の列名

Y:相関名

DC3:導出表Yの導出列名