スケーラブルデータベースサーバ HiRDB Version 8 システム定義(UNIX(R)用)

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

14.2 オペランドの説明

1) pd_hub_opt_on_cnd = 1〜2 〜<符号なし整数>《2》
外結合(LEFT OUTER JOIN)を外部サーバで実行するかどうかを指定します。
1:ON条件に関係なく外結合を外部サーバで実行します。
2:次に示す場合に外結合を外部サーバで実行します。
  • ON条件が「外表カラム=内表カラム」のAND連接の場合
  • ON条件が「外表カラム=内表カラム」及び「内表カラム=定数」のAND連接の場合

 

2) pd_hub_opt_joined_table = 1〜3 〜<符号なし整数>《2》
表の結合を外部サーバで実行するかどうかを指定します。
1:外結合,内結合,及び内表側が結合である結合を外部サーバで実行します。
2:内表側が結合である結合,及び外結合と(内)結合が混在した結合を外部サーバで実行しません。
3:2の条件に加えて,外結合とWITH句が混在した場合,それらを外部サーバで実行しません。

 

3) pd_hub_opt_set_func = 1〜4 〜<符号なし整数>《2》
集合関数を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:DISTINCT集合関数の引数が列指定ではない場合,この集合関数を外部サーバで実行しません。
4:ALL集合関数のCOUNT,DISTINCT集合関数のAVG,及び2種類以上のDISTINCT集合関数を一つの問合せ指定に記述した場合,これらの集合関数を外部サーバで実行しません。

 

4) pd_hub_opt_case = 1〜2 〜<符号なし整数>《2》
CASE式を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
COALESCEはスカラ関数VALUEに変換するため,このオプションに2を指定しても外部サーバで実行されます。

 

5) pd_hub_opt_like = 1〜4 〜<符号なし整数>《2》
LIKE述語,NOT LIKE述語,XLIKE述語,NOT XLIKE述語を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:LIKE述語,NOT LIKE述語だけを外部サーバで実行しません。
4:XLIKE述語,NOT XLIKE述語だけを外部サーバで実行しません。
《注意事項》
文字列型,可変長文字列型,混在文字列型,及び可変長混在文字列型のデータに対するLIKE述語,NOT LIKE述語,XLIKE述語,NOT XLIKE述語に全角の特殊文字を含む場合,又は各国文字列型,可変長各国文字列型のデータに対するLIKE述語,NOT LIKE述語,XLIKE述語,NOT XLIKE述語に半角の特殊文字を含む場合,これらの述語を外部サーバで実行しないでください。

 

6) pd_hub_opt_grouping = 1〜4 〜<符号なし整数>《2》
GROUP化処理を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:GROUP BYなしのHAVING句を外部サーバで実行しません。
4:GROUP化列が列指定ではない場合,GROUP化処理を外部サーバで実行しません。

 

7) pd_hub_opt_data_len = 1〜2147483647 〜<符号なし整数>《255》
固定長文字型,可変長文字型,固定長各国文字型,可変長各国文字型,固定長混在文字型,及び可変長混在文字型の値式の結果のデータ長がこのオペランドで指定した値(バイト数)を超える場合,値式の処理をHiRDBで実行します。
ただし,値式中以外に?パラメタ,埋込み変数,SQLパラメタ,SQL変数,又はUSERを指定した場合,?パラメタ,埋込み変数,SQLパラメタ,SQL変数,又はUSERの実長がこのオペランドの値を超えても,外部サーバで処理を実行するためエラーになることがあります。

 

8) pd_hub_opt_abs = 1〜3 〜<符号なし整数>《2》
スカラ関数ABS()を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:引数に日間隔型又は時間隔型を指定した場合,外部サーバで実行しません。

 

9) pd_hub_opt_date = 1〜3 〜<符号なし整数>《2》
DATE型列指定,スカラ関数DATE(),及びCHAR()に日付型を指定した場合,外部サーバで実行するかどうかを指定します。ただし,次に示す場合は外部サーバで実行しません。
  • 第一引数に文字列型又は時刻印型を指定し,第二引数に書式を指定したDATE()の場合
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:DATE()の引数に整数型を指定した場合,DATE()を外部サーバで実行しません。DATE型列指定も外部サーバで実行しません。引数に日付型を指定したCHAR()は外部サーバで実行します。

 

10) pd_hub_opt_time = 1〜2 〜<符号なし整数>《2》
スカラ関数TIME(),及びCHAR()に時刻型を指定した場合,外部サーバで実行するかどうかを指定します。ただし,次に示す場合は外部サーバで実行しません。
  • 第一引数に文字列型を指定し,第二引数に書式を指定したTIME()の場合
1:外部サーバで実行します。
2:外部サーバで実行しません。

 

11) pd_hub_opt_digits = 1〜2 〜<符号なし整数>《2》
スカラ関数DIGITS()を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。

 

12) pd_hub_opt_length = 1〜8 〜<符号なし整数>《2》
スカラ関数LENGTH()を外部サーバで実行するかどうかを指定します。ただし,引数が時刻印型,又はBINARY型の場合は外部サーバで実行しません。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:引数が混在文字列型又は可変長混在文字列型の場合は外部サーバで実行しません。
4:引数が文字列型以外(数,日付,時刻,日間隔,及び時間隔)の場合は外部サーバで実行しません。
5:引数がBLOB型の場合は外部サーバで実行しません。
6:引数が混在文字列型,可変長混在文字列型,又は文字列型以外(数,日付,時刻,日間隔,及び時間隔)の場合は外部サーバで実行しません。
7:引数が文字列型以外(数,日付,時刻,日間隔,及び時間隔),又はBLOB型の場合は外部サーバで実行しません。
8:引数が混在文字列型,可変長混在文字列型,又はBLOB型の場合は外部サーバで実行しません。
《注意事項》
外部サーバでの定義長と,外部表での定義長が異なる列を含む値式に対するLENGTHを外部サーバで実行すると,外部サーバでの実行結果とHiRDBがデータを受け取ってLENGTHを実行したときの結果が異なります。このような場合はこのオペランドに2を指定してください。

 

13) pd_hub_opt_lower_upper_type = 1〜8 〜<符号なし整数>《2》
スカラ関数LOWER及びUPPERを外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:引数が固定長文字列型及び可変長文字列型の場合は外部サーバで実行しません。
4:引数が固定長各国文字列型及び可変長各国文字列型の場合は外部サーバで実行しません。
5:引数が固定長混在文字列型及び可変長混在文字列型の場合は外部サーバで実行しません。
6:引数が固定長文字列型,可変長文字列型,固定長各国文字列型,及び可変長各国文字列型の場合は外部サーバで実行しません。
7:引数が固定長各国文字列型,可変長各国文字列型,固定長混在文字列型,及び可変長混在文字列型の場合は外部サーバで実行しません。
8:引数が固定長文字列型,可変長文字列型,固定長混在文字列型,及び可変長混在文字列型の場合は外部サーバで実行しません。

 

14) pd_hub_opt_mod_div_type = 1〜3 〜<符号なし整数>《2》
スカラ関数MOD(),集合関数AVG,及び割り算を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:次に示す場合は外部サーバで実行しません。
  • 引数がDECIMAL型のMOD()の場合
  • 引数がDECIMAL型の集合関数AVGの場合
  • 演算結果がDECIMAL型になる割り算の場合

 

15) pd_hub_opt_substr = 1〜3 〜<符号なし整数>《2》
スカラ関数SUBSTR()を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:引数が混在文字列型及び可変長混在文字列型の場合,外部サーバで実行しません。

 

16) pd_hub_opt_num = 1〜2 〜<符号なし整数>《2》
数データ型へ型変換をするスカラ関数DECIMAL,FLOAT,及びINTEGERを外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。

 

17) pd_hub_opt_datetime = 1〜2 〜<符号なし整数>《2》
日付又は時刻を抽出するスカラ関数を外部サーバで実行するかどうかを指定します。対象は次に示す関数です。ただし,引数が時刻印型の場合は外部サーバで実行しません。
  • DAY
  • HOUR
  • MINUTE
  • MONTH
  • SECOND
  • YEAR
1:外部サーバで実行します。
2:外部サーバで実行しません。

 

18) pd_hub_opt_datetime_op = 1〜5 〜<符号なし整数>《2》
日付演算及び時刻演算を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
3:ラベル付き間隔の値式にスカラ関数ABS又はMODを含む場合は,外部サーバで実行しません。
4:3の条件に加えて次に示す演算を外部サーバで実行しません。
  • 日間隔±日間隔
  • 日間隔±10進定数
  • 日間隔±DECIMAL
  • 日間隔*整数演算
  • 日間隔/整数演算
  • 時間隔±時間隔
  • 時間隔±10進定数
  • 時間隔±DECIMAL
  • 時間隔*整数演算
  • 時間隔/整数演算
  • 日付データ±日付データ
  • 時刻データ±時刻データ
5:日付データ±値式{YEARS|MONTHS|DAYS}だけを外部サーバで実行します。時刻演算は外部サーバで実行しません。

 

19) pd_hub_opt_trailing_spc = 1〜2 〜<符号なし整数>《2》
後続空白を含む,又はその可能性がある可変長文字列型(比較述語,BETWEEN述語,IN述語,集合関数のMIN・MAX,SELECT DISTINCT指定,DISTINCT指定集合関数,GROUP BY,及びORDER BY句)を外部サーバで実行するかどうかを指定します。
ただし,列オプションCOLLATING_SEQUENCEに'DIFFERENT'の指定がある列指定を含む文字列型の大小比較(比較述語<,<=,>,>=),BETWEEN述語,集合関数のMIN・MAX,ORDER BY句),文字列型定数同士の比較処理,文字列型定数と変数の比較処理,及び変数同士の比較処理は常に外部サーバで実行しません。
1:外部サーバで実行します。
2:後続空白を含む,又はその可能性がある可変長文字列型の比較処理を外部サーバで実行しません。次に示す値式が相当します。変数を用いる場合は,変数に設定する値に後続空白を含まないようにしてください。
  • 値式は後続空白を含む文字列定数である場合
  • 値式が連結演算ではなく,かつ列オプションTRAILING_SPACEに'YES'が指定された可変長文字列型の列を含む場合
  • 値式が戻り値の型が可変長文字列型のスカラ関数SUBSTRである場合
  • 値式が戻り値の型が可変長文字列型の連結演算であり,かつ連結演算の最も右側の一次子が1〜3の条件を満たす場合
  • 値式が戻り値の型が可変長文字列型の連結演算であり,かつ連結演算の最も右側の一次子が固定長文字列型である場合(ただし,最も右側の一次子がスカラ関数CHAR及びDIGITSの場合を除く)

 

20) pd_hub_opt_in_value_num = 1〜30000 〜<符号なし整数>《255》
外部サーバで実行する場合,IN述語の右辺に指定する行値構成子数の最大値を指定します。IN述語の右辺に指定する行値構成子数が指定値を超える場合はHiRDB上で処理を実行します。

 

21) pd_hub_opt_nullable = 1〜2 〜<符号なし整数>《2》
列オプションのNULLABLEにYESの指定がある場合,又は列オプションのNULLABLEを指定した場合,この列を含む連結演算を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。

 

22) pd_hub_opt_use_zero_string = 1〜2 〜<符号なし整数>《2》
0バイト文字列を含むか,又はその可能性のある値指定を外部サーバで評価するかどうかを指定します。0バイト文字列定数,データ型として文字列型を仮定する埋込み変数,SQL変数,SQLパラメタ,及び?パラメタが対象となります。
1:外部サーバで実行します。
2:0バイト文字列を含むか,又はその可能性のある値指定を次に示すどれかに含む場合,該当値指定の評価を外部サーバで実行しません。
  • 述語
  • GROUP BY句
  • ORDER BY句
  • 選択式(かつGROUP BY句,ORDER BY句,DISTINCT,集合関数,HAVING句のどれかを指定している)
外部サーバが0バイト文字列をナル値として扱う場合は2を指定してください。

 

23) pd_hub_opt_nchar = 1〜2 〜<符号なし整数>《2》
外部サーバの各国文字型の文字コードセットが2バイト固定幅かどうか,及び埋め字が2バイト文字の空白かどうかを指定します。
1:2バイト固定幅であり,かつ埋め字が2バイト文字の空白である場合に指定します。
2:2バイト固定幅でない,又は埋め字が2バイト文字の空白でない場合に指定します。
2を指定した場合,各国文字型,可変長各国文字型を含む述語,値式を外部サーバで実行しません。外部サーバの各国文字型の文字コードセットが2バイト固定幅ではない場合は2を指定してください。

 

24) pd_hub_opt_nest_scalar = 0〜65535 〜<符号なし整数>《0》
外部サーバで実行するスカラ演算又は集合関数によるネスト数の最大値を指定します。0を指定した場合はネスト数に関係なく外部サーバで実行します。また,ネスト数の数え方はHiRDBの数え方とは異なり,スカラ演算,集合関数のネスト数は演算の種類に関係なくすべて1とします。

 

25) pd_hub_opt_float = 1〜2 〜<符号なし整数>《1》
浮動小数点型を含む値式,述語,GROUP BY句,ORDER BY句,選択式(かつ,GROUP BY句,ORDER BY句,DISTINCT,集合関数,HAVING句のどれかの指定がある)を外部サーバで実行するかどうかを指定します。ただし,値指定の処理は外部サーバでは実行されません。
1:外部サーバで実行します。
2:外部サーバで実行しません。
外部サーバのマシン又はDBMSと自HiRDBの浮動小数点型の精度が異なる場合は2を指定してください。

 

26) pd_hub_opt_table_num = 0〜65535 〜<符号なし整数>《0》
1SQL文中に指定した表数がこのオペランドの値を超える場合はHiRDB上で処理を実行します。このオペランドを省略するか,又は0を指定した場合は,表数に関係なく外部サーバで処理を実行します。

 

27) pd_hub_opt_time_24hour = 1〜2 〜<符号なし整数>《1》
TIME型を外部サーバで実行するかどうかを指定します。
1:外部サーバで実行します。
2:外部サーバで実行しません。
外部DBMSのTIME型の列に24時00分00秒が格納されている場合は2を指定してください。