13.3 Notes
- If execution of an incompatible function by a foreign server is specified, an error occurs during an execution attempt by the foreign server. If execution of a function that has the same syntax but different specification by a foreign server is specified, that function is processed according to the specification of the foreign server.
- A foreign server does not execute the following types of functions:
- Function invocation
- System-defined scalar function
- IS_USER_CONTAINED_IN_HDS_GROUP function
- HEX function
- TIMESTAMP function
- TIMESTAMP_FORMAT function
- BIT_AND_TEST function
- VARCHAR_FORMAT function
- DATE function with a date format specified
- TIME function with a date format specified
- POSITION function
- Row value constructor having two or more row value constructor elements
- IN predicate containing a row value constructor that does not specify a value, on the right side of the equation
- WRITE specification
- CAST specification
- GET_JAVA_STORED_ROUTINE_SOURCE specification
- LIMIT clause
- Comparison predicates that include a column specification that requires conversion between character data and numerical data
- Concatenation operations that include a column specification that requires conversion between character data and numerical data
- Scalar functions that include a column specification that requires conversion between character data and numerical data
- Window function
- SIMILAR predicate
- If an SQL parameter, SQL variable, USER, CURRENT_DATE, CURRENT_TIME, or CURRENT_TIMESTAMP is specified for a selection expression, that selection expression is not executed by a foreign server.
- If an embedded variable, ? parameter, SQL parameter, SQL variable, USER, CURRENT_DATE, CURRENT_TIME, or CURRENT_TIMESTAMP is described in the four arithmetic operations, date operation, concatenation operation, scalar function, or CASE expression, the foreign server does not execute the processing of the four arithmetic operations, date operation, concatenation operation, scalar function, or CASE expression.
- The foreign server does not 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 following data types:
- Time stamp type
- BINARY type
- If there is a query in which a view table, a WITH clause query name, or a derived table is specified for a FROM clause, and if a view table, WITH clause, or derived table that becomes an internally derived table is specified for a FROM clause of this view table, derived query expression inside a WITH clause, or derived table, the foreign server does not execute the first query specification.
- If a set function is specified in a view table or a selection expression for a derived query expression in a WITH clause, and if the query specification selection expression specifying this view table or WITH clause query name in a FROM clause does not contain the column specification derived from the set function, the foreign server does not execute that SQL statement.
- If no set function or GROUP BY clause is specified, and a query specification selection expression with HAVING specified does not include a column specification, the foreign server does not execute that SQL statement.
- If the same column is specified in a view table or in multiple selection expressions for a derived query expression in a WITH clause, and if a GROUP BY clause is specified in this view table or a query in which a WITH clause query name is specified for a FROM clause, the foreign server does not execute that SQL statement.
- If an INSERT, UPDATE, or DELETE statement contains a syntax that is not executed by the foreign server, an error results. For statements other than INSERT, UPDATE, and DELETE, HiRDB handles the syntax that is not executed by the foreign server.
- If an SQL parameter, SQL variable, USER, CURRENT_DATE, CURRENT_TIME, or CURRENT_TIMESTAMP is specified in the operand of a comparison predicate with no column specification, the foreign server does not execute that SQL statement.