In some cases the same query can produce different output tables on different implementations because of subtle implementation-dependent
behaviors. Such queries are called
possibly nondeterministic queries. A query is possibly nondeterministic if any of the following is true:
- It specifies DISTINCT and the data type of at least one column of the source row is a character string
- One column of the source rows is a character string data type and is used in either the MIN or the MAX aggregate function
- A character set column is used as a grouping column or in a UNION
- A HAVING clause uses a character string column within a MIN or MAX function
- It uses UNION without specifying ALL
Possibly nondeterministic queries cannot be used in constraints.