SQL transformation
Applies to ✅ Open Source Edition ✅ Express Edition ✅ Professional Edition ✅ Enterprise Edition
jOOQ supports a few built in SQL transformations, which can be enabled through a variety of settings. These transformations will produce transformed SQL output regardless if the input was created using the DSL API, or the parser.
Table of contents
- 3.26.9.1.
- ANSI JOIN to table lists
- 3.26.9.2.
- Table lists to ANSI JOIN
- 3.26.9.3.
- ROWNUM to LIMIT
- 3.26.9.4.
- QUALIFY to derived table
- 3.26.9.5.
- IN condition subquery with LIMIT to derived table
- 3.26.9.6.
- GROUP BY <column index> (new)
- 3.26.9.7.
- Inline CTE (new)
- 3.26.9.8.
- Unnecessary arithmetic expressions
- 3.26.9.9.
- Pattern based transformation
- 3.26.9.9.1.
- AND to NOT IN
- 3.26.9.9.2.
- Arithmetic comparisons (new)
- 3.26.9.9.3.
- Arithmetic expressions
- 3.26.9.9.4.
- BIT_GET function (new)
- 3.26.9.9.5.
- BIT_SET function (new)
- 3.26.9.9.6.
- CASE searched to CASE simple (new)
- 3.26.9.9.7.
- CASE to CASE abbreviation (new)
- 3.26.9.9.8.
- CASE with DISTINCT FROM to DECODE (new)
- 3.26.9.9.9.
- CASE with ELSE NULL (new)
- 3.26.9.9.10.
- COUNT(*) scalar subquery comparison
- 3.26.9.9.11.
- COUNT(const) (new)
- 3.26.9.9.12.
- COUNT(expr) scalar subquery comparison
- 3.26.9.9.13.
- DISTINCT FROM NULL (new)
- 3.26.9.9.14.
- Empty scalar subquery
- 3.26.9.9.15.
- Flatten CASE (new)
- 3.26.9.9.16.
- Flatten CASE abbreviations (new)
- 3.26.9.9.17.
- Flatten DECODE (new)
- 3.26.9.9.18.
- Hyperbolic functions
- 3.26.9.9.19.
- Idempotent function repetition
- 3.26.9.9.20.
- Inverse hyperbolic functions
- 3.26.9.9.21.
- Logarithmic functions
- 3.26.9.9.22.
- Merge AND predicates
- 3.26.9.9.23.
- Merge BIT_NOT with BIT_NAND
- 3.26.9.9.24.
- Merge BIT_NOT with BIT_NOR
- 3.26.9.9.25.
- Merge BIT_NOT with BIT_XNOR
- 3.26.9.9.26.
- Merge CASE .. WHEN and ELSE clauses (new)
- 3.26.9.9.27.
- Merge CASE .. WHEN clauses (new)
- 3.26.9.9.28.
- Merge IN predicates
- 3.26.9.9.29.
- Merge NOT with comparison predicates
- 3.26.9.9.30.
- Merge NOT with DISTINCT predicate
- 3.26.9.9.31.
- Merge OR predicates
- 3.26.9.9.32.
- Merge range predicates
- 3.26.9.9.33.
- Normalise associative operations
- 3.26.9.9.34.
- Normalise fields compared to values
- 3.26.9.9.35.
- Normalise IN list with single element to comparison
- 3.26.9.9.36.
- NOT AND (new)
- 3.26.9.9.37.
- NOT OR (new)
- 3.26.9.9.38.
- NULL ON NULL INPUT (new)
- 3.26.9.9.39.
- OR to IN
- 3.26.9.9.40.
- Repeated arithmetic negation
- 3.26.9.9.41.
- Repeated bitwise negation
- 3.26.9.9.42.
- Repeated NOT
- 3.26.9.9.43.
- Simplify CASE abbreviations (new)
- 3.26.9.9.44.
- Trigonometric functions
- 3.26.9.9.45.
- Trim
- 3.26.9.9.46.
- Trivial bitwise operations (new)
- 3.26.9.9.47.
- Trivial CASE abbreviations
- 3.26.9.9.48.
- Trivial predicates
- 3.26.9.9.49.
- Unnecessary DISTINCT (new)
- 3.26.9.9.50.
- Unnecessary EXISTS subquery clauses (new)
- 3.26.9.9.51.
- Unnecessary GROUP BY expressions (new)
- 3.26.9.9.52.
- Unnecessary INNER JOIN (new)
- 3.26.9.9.53.
- Unnecessary ORDER BY expressions (new)
- 3.26.9.9.54.
- Unnecessary scalar subquery (new)
- 3.26.9.9.55.
- Unreachable CASE clauses (new)
- 3.26.9.9.56.
- Unreachable DECODE clauses (new)
previous : next |
Feedback
Do you have any feedback about this page? We'd love to hear it!