13.2 Operand explanations
- 1) pd_hub_opt_on_cnd = 1 - 2
<unsigned integer> <<2>> - Specifies whether a foreign server is used to execute an outer join (LEFT OUTER JOIN).
- 1: The foreign server executes an outer join regardless of the ON condition.
- 2: The foreign server executes an outer join in the following cases:
- The ON condition consists of outer table column = inner table column linked using AND.
- The ON condition consists of outer table column = inner table column and inner table column = constant linked using AND.
- 2) pd_hub_opt_joined_table = 1 - 3
<unsigned integer> <<2>> - Specifies whether a foreign server is used to execute a table join.
- 1: The foreign server executes an outer join, inner join, and inner table join.
- 2: The foreign server does not execute an inner table join or a join that includes both an outer join and (inner) join.
- 3: In addition to Condition 2, the foreign server does not execute a join that includes both an outer join and a WITH clause.
- 3) pd_hub_opt_set_func = 1 - 4
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute set functions.
- 1: The foreign server executes set functions.
- 2: The foreign server does not execute set function.
- 3: If the argument of a DISTINCT set function does not specify a column, the foreign server does not execute this set function.
- 4: If COUNT of an ALL set function, AVG of a DISTINCT set function, or two or more kinds of DISTINCT set functions are described as in single query, the foreign server does not execute these set functions.
- 4) pd_hub_opt_case = 1 - 2
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute CASE expressions.
- 1: The foreign server executes CASE expressions.
- 2: The foreign server does not execute CASE expressions.
- Since COALESCE is converted into a scalar function value, it is executed by the foreign server even when 2 is specified for the option.
- 5) pd_hub_opt_like = 1 - 4
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute a LIKE predicate, NOT LIKE predicate, XLIKE predicate, and NOT XLIKE predicate.
- 1: The foreign server executes these predicates.
- 2: The foreign server does not execute these predicates.
- 3: The foreign server does not execute a LIKE predicate or NOT LIKE predicate only.
- 4: The foreign server does not execute an XLIKE predicate or NOT XLIKE predicate only.
- Note
- If a LIKE predicate, NOT LIKE predicate, XLIKE predicate, or NOT XLIKE predicate for the character string-type, variable-size character string-type, mixed character string-type, or variable-size mixed character string-type data contains two-byte special characters, or if a LIKE predicate, NOT LIKE predicate, XLIKE predicate, or NOT XLIKE predicate for the national character string-type or variable-size national character string-type data contains one-byte special characters, do not execute these predicates using the foreign server.
- 6) pd_hub_opt_grouping = 1 - 4
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute grouping.
- 1: The foreign server executes grouping.
- 2: The foreign server does not execute grouping.
- 3: The foreign server does not execute a HAVING clause without GROUP BY.
- 4: If a column is not specified for a grouping column, the foreign server does not execute grouping.
- 7) pd_hub_opt_data_len = 1 - 2147483647
<unsigned integer> <<255>> - If the data size of the result of a value expression of a fixed-size character type, variable-size character type, fixed-size national character type, variable-size national character type, fixed-size mixed character type, or variable-size mixed character type exceeds the value (units: bytes) specified by this operand, HiRDB processes the value expression.
- However, if a ? parameter, embedded variable, SQL parameter, SQL variable, or USER is specified outside the value expression, the foreign server processes the value expression even when the actual size of the ? parameter, embedded variable, SQL parameter, SQL variable, or USER exceeds the value specified by this operand. Therefore, an error may occur.
- 8) pd_hub_opt_abs = 1 - 3
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute scalar functions.
- 1: The foreign server executes scalar functions.
- 2: The foreign server does not execute scalar functions.
- 3: If the day interval type or time interval type is specified for the argument, the foreign server does not execute scalar functions.
- 9) pd_hub_opt_date = 1 - 3
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute the DATE-type column specification, scalar function DATE(), and CHAR() when the date type is specified. Note however that the foreign server does not execute these operations in the following case:
- DATE() in which the character type or time stamp type is specified for the first argument and format is specified for the second argument
- 1: The foreign server executes DATE().
- 2: The foreign server does not execute DATE().
- 3: The foreign server does not execute DATE() if the integer type is specified for its argument. The foreign server does not execute the DATE-type column specification, either. The foreign server executes CHAR() in which the date type is specified for the argument.
- 10) pd_hub_opt_time = 1 - 2
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute the scalar function TIME() and CHAR() when the time type is specified. Note however that the foreign server does not execute these operations in the following case:
- TIME() in which the character type is specified for the first argument and format is specified for the second argument
- 1: The foreign server executes TIME().
- 2: The foreign server does not execute TIME().
- 11) pd_hub_opt_digits = 1 - 2
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute the scalar function DIGITS().
- 1: The foreign server executes DIGITS().
- 2: The foreign server does not execute DIGITS().
- 12) pd_hub_opt_length = 1 - 8
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute the scalar function LENGTH(). However, if the argument is the time stamp type or binary type, the foreign server does not execute this scalar function.
- 1: The foreign server executes LENGTH().
- 2: The foreign server does not execute LENGTH().
- 3: The foreign server does not execute LENGTH() if the argument is the mixed character type or variable-size mixed character type.
- 4: The foreign server does not execute LENGTH() if the argument is not the character type (that is, if the argument is a number, date, time, day interval, or time interval).
- 5: The foreign server does not execute LENGTH() if the argument is the BLOB type.
- 6: The foreign server does not execute LENGTH() if the argument is not the mixed character type, variable-size mixed char type, or character type (that is, if the argument is a number, date, time, day interval, or time interval).
- 7: The foreign server does not execute LENGTH() if the argument is not the character type (that is, if the argument is a number, date, time, day interval, or time interval) or if it is the BLOB type.
- 8: The foreign server does not execute LENGTH() if the argument is the mixed character type, variable-size mixed char type, or BLOB type.
- Notes
- If the foreign server executes LENGTH for a value expression for which the size defined in the foreign server is different from the size defined in a foreign table, the execution result from the foreign server differs from the result obtained when HiRDB executes LENGTH after receiving data. In this case, specify 2 for this operand.
- 13) pd_hub_opt_lower_upper_type = 1 - 8
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute scalar functions LOWER and UPPER.
- 1: The foreign server executes these scalar functions.
- 2: The foreign server does not execute these scalar functions.
- 3: The foreign server does not execute these scalar functions if their arguments are the fixed- or variable-size character type.
- 4: The foreign server does not execute these scalar functions if their arguments are the fixed- or variable-size national character type.
- 5: The foreign server does not execute these scalar functions if their arguments are the fixed- or variable-size mixed character type.
- 6: The foreign server does not execute these scalar functions if their arguments are the fixed- or variable-size character string type, or fixed- or variable-size national character type.
- 7: The foreign server does not execute these scalar functions if their arguments are the fixed- or variable-size national character type, or fixed- or variable-size mixed character string type.
- 8: The foreign server does not execute these scalar functions if their arguments are the fixed- or variable-size character string type, or fixed- or variable-size mixed character string type.
- 14) pd_hub_opt_mod_div_type = 1 - 3
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute the scalar function MOD(), set function AVG, and a division operation.
- 1: The foreign server executes the function and the operation.
- 2: The foreign server does not execute the function and the operation.
- 3: The foreign server does not execute the function and the operation in the following cases:
- MOD() with the argument of the DECIMAL type
- When the argument is a DECIMAL-type set function AVG
- Division whose operation result is the DECIMAL type
- 15) pd_hub_opt_substr = 1 - 3
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute the scalar function SUBSTR().
- 1: The foreign server executes SUBSTR().
- 2: The foreign server does not execute SUBSTR().
- 3: The foreign server does not execute SUBSTR() if its argument is the mixed character string type or variable-size mixed character string type.
- 16) pd_hub_opt_num = 1 - 2
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute the scalar functions DECIMAL, FLOAT, and INTEGER, which convert the type to the numerical data type.
- 1: The foreign server executes these functions.
- 2: The foreign server does not execute these functions.
- 17) pd_hub_opt_datetime = 1 - 2
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute scalar functions that extract the date or time. The target functions are listed as follows. However, the foreign server does not execute any function with an argument of the time stamp type.
- DAY
- HOUR
- MINUTE
- MONTH
- SECOND
- YEAR
- 1: The foreign server executes these functions.
- 2: The foreign server does not execute these functions.
- 18) pd_hub_opt_datetime_op = 1 - 5
<unsigned integer> <<2>> - Specifies whether to use a foreign server to execute date and time operations.
- 1: The foreign server executes these operations.
- 2: The foreign server does not execute these operations.
- 3: The foreign server does not execute these operations if a value expression with a labeled duration includes the scalar function ABS or MOD.
- 4: In addition to Condition 3, the foreign server does not execute the following operations:
- Day interval
day interval - Day interval
decimal constant - Day interval
DECIMAL - Day interval
integer operation - Day interval
integer operation - Time interval
time interval - Time interval
decimal constant - Time interval
DECIMAL - Time interval
integer operation - Time interval
integer operation - Date data
date data - Time data
time data
- 5: Only date data
value expression {YEARS|MONTHS|DAYS} is executed by the foreign server. The time operation is not executed by the foreign server.
- 19) pd_hub_opt_trailing_spc = 1 - 2
<unsigned integer> <<2>> - Specifies whether a foreign server is used to execute the variable-size character string type that includes or has a possibility of including a trailing space (comparison predicate, BETWEEN predicate, IN predicate, set function MIN or MAX, SELECT DISTINCT specification, set function with DISTINCT specification, GROUP BY and ORDER BY clause).
- Note that the foreign server never executes a character string-type comparison (comparison predicates <, <=, >, and >=) that includes column specification in which DIFFERENT is specified for the column option COLLATING_SEQUENCE, BETWEEN predicate, set functions MIN and MAX, ORDER BY clause, comparison between character string-type constants, comparison between a character string-type constant and a variable, or comparison between variables.
- 1: The foreign server executes these types.
- 2: The foreign server does not execute a variable-size character string-type comparison that includes or has a possibility of including a trailing space. The following value expressions fall in this category. If you use a variable, make sure that the value specified for the variable does not include a trailing space.
- A value expression that is a character string constant that includes a trailing space
- A value expression that is not a concatenation operation and that includes a variable-size character string-type column in which YES is specified for the column option TRAILING_SPACE
- A value expression that is a scalar function SUBSTR with a return value that is the variable-size character string-type
- A value expression that is a concatenation operation with a return value that is the variable-size character string-type and in which the right-most primary of the concatenation operation satisfies Conditions 1 through 3
- A value expression that is a concatenation operation with a return value that is the variable-size character string-type and in which the right-most primary of the concatenation operation is the fixed-size character string type (excluding cases in which the right-most primary is a scalar function CHAR or DIGITS)
- 20) pd_hub_opt_nullable = 1 - 2
<unsigned integer> <<2>> - Specifies whether a foreign server is used to execute a concatenation operation that includes a column in which YES or NULLABLE is specified for the column option.
- 1: The foreign server executes the concatenation operation.
- 2: The foreign server does not execute the concatenation operation.
- 21) pd_hub_opt_use_zero_string = 1 - 2
<unsigned integer> <<2>> - Specifies whether to use a foreign server to evaluate a value specification that includes or has a possibility of including a 0-byte character string. The evaluation targets are 0-byte character string constants, embedded variables for which the character string type is assumed for the data type, SQL variables, SQL parameters, and the ? parameter.
- 1: The foreign server evaluates value specifications.
- 2: The foreign server does not evaluate a value specification that includes or has a possibility of including a 0-byte character string in any of the following items.
- Predicate
- GROUP BY clause
- ORDER BY clause
- Selection expression (that also specifies a GROUP BY clause, ORDER BY clause, DISTINCT, set function, or HAVING clause)
- If the foreign server treats a 0-byte character string as a null value, specify 2.
- 22) pd_hub_opt_nchar = 1 - 2
<unsigned integer> <<2>> - Specifies whether the national character-type character code set of a foreign server is fixed to 2 bytes and whether the embedded character is a 2-byte space.
- 1: Fixed to 2 bytes and the embedded character is a 2-byte space.
- 2: Not fixed to 2 bytes or the embedded character is not a 2-byte space.
- If 2 is specified, the foreign server does not execute a predicate or value expression that includes the national character type or variable-size national character type. If the national character-type character code set of the foreign server is not fixed to 2 bytes, specify 2.
- 23) pd_hub_opt_nest_scalar = 0 - 65535
<unsigned integer> <<0>> - Specifies the maximum number of nests for a scalar operation or set function to be executed by a foreign server. If 0 is specified, the foreign server executes these operations or functions regardless of the number of nests. Here, the nests are counted differently from HiRDB, and the number of nests for a scalar operation or set function is 1 regardless of the type of operation.
- 24) pd_hub_opt_float = 1 - 2
<unsigned integer> <<1>> - Specifies whether a foreign server to execute a value expression, predicate, GROUP BY clause, ORDER BY clause, or selection expression (and a GROUP BY clause, ORDER BY clause, DISTINCT, set function, or HAVING clause is specified) that includes the floating-point type be used. Note that processing of value specification is not executed by the foreign server.
- 1: The foreign server executes these operations.
- 2: The foreign server does not execute these operations.
- If the precision of the floating-point type is different between the machine or DBMS of the foreign server and the local HiRDB, specify 2.
- 25) pd_hub_opt_table_num = 0 - 65535
<unsigned integer> <<0>> - If the number of tables specified in a single SQL statement exceeds the value specified for this operand, HiRDB processes the tables. If this operand is omitted or 0 is specified for it, tables are processed by a foreign server regardless of their number.
- 26) pd_hub_opt_time_24hour = 1 - 2
<unsigned integer> <<1>> - Specifies whether a foreign server is used to execute the TIME type.
- 1: The foreign server executes the TIME type.
- 2: The foreign server does not execute the TIME type.
- If 24 hours, 00 minutes, 00 seconds is stored in the TIME-type column of a foreign DBMS, specify 2.