From c96eff7ea4e7a4713b8566aa39ffeb0c497ccc4a Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Sun, 29 Jan 2012 15:44:51 +0000 Subject: [PATCH] Release 2.0.3 --- jOOQ-website/manual-pdf/jOOQ-manual.fo.xml | 178 +++++++++++++----- jOOQ-website/manual-pdf/jOOQ-manual.pdf | Bin 484601 -> 489471 bytes jOOQ-website/manual-single-page/index.php | 111 +++++++++-- jOOQ-website/manual/DSL/CONDITION/index.php | 4 +- jOOQ-website/manual/DSL/SELECT/index.php | 21 ++- jOOQ-website/manual/DSL/TABLESOURCE/index.php | 92 +++++++++ .../manual/DSL/TABLESOURCES/index.php | 92 +++++++++ jOOQ-website/manual/DSL/index.php | 3 + jOOQ-website/manual/JOOQ/Query/index.php | 4 +- jOOQ-website/manual/index.php | 3 + jOOQ-website/src/main/resources/manual.xml | 95 +++++++++- 11 files changed, 526 insertions(+), 77 deletions(-) create mode 100644 jOOQ-website/manual/DSL/TABLESOURCE/index.php create mode 100644 jOOQ-website/manual/DSL/TABLESOURCES/index.php diff --git a/jOOQ-website/manual-pdf/jOOQ-manual.fo.xml b/jOOQ-website/manual-pdf/jOOQ-manual.fo.xml index 9f73f98e47..5c30c59812 100644 --- a/jOOQ-website/manual-pdf/jOOQ-manual.fo.xml +++ b/jOOQ-website/manual-pdf/jOOQ-manual.fo.xml @@ -485,6 +485,22 @@ +Table sources + + + + + + + + + +3. + + + + + Conditions @@ -495,7 +511,7 @@ -3. +4. @@ -511,7 +527,7 @@ -4. +5. @@ -527,7 +543,7 @@ -5. +6. @@ -543,7 +559,7 @@ -6. +7. @@ -559,7 +575,7 @@ -7. +8. @@ -575,7 +591,7 @@ -8. +9. @@ -591,7 +607,7 @@ -9. +10. @@ -607,7 +623,7 @@ -10. +11. @@ -623,7 +639,7 @@ -11. +12. @@ -639,7 +655,7 @@ -12. +13. @@ -655,7 +671,7 @@ -13. +14. @@ -1842,8 +1858,8 @@ i.execute(); Example: INSERT SELECT syntax support In some occasions, you may prefer the INSERT SELECT syntax, for instance, when you copy records from one table to another: -Insert i = create.insertInto(T_AUTHOR_ARCHIVE, - create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.equal(1))); +Insert i = create.insertInto(T_AUTHOR_ARCHIVE) + .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.equal(1))); i.execute(); @@ -3736,19 +3752,30 @@ create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count()) org.jooq.SelectOnStep is a top-level interface. -// These join conditions are supported +... keyFields); +SelectJoinStep onKey(ForeignKey key); +SelectJoinStep using(Field... fields); // The example, continued: create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count()) .from(T_AUTHOR) - .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID)); + .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));]]> - See the section about - Conditions + + See the section about + conditions to learn more about the many ways - to create Conditions in jOOQ. Now we're half way through. As you can + to create Conditions in jOOQ. + See also the section about + table sources + to learn more about the various ways of creating JOIN + expressions + + + Now we're half way through. As you can see above, we're back to the SelectJoinStep. This means, we can re-iterate and add another JOIN clause, just like in SQL. Or we go on to the next step, adding conditions in the @@ -3903,10 +3930,75 @@ Record fetchOne(); .where(TBook.LANGUAGE.equal("DE")) .orderBy(TBook.TITLE) .fetchAny(); + + +3.2. Table sources +3.2. Table sources + + When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about + creating custom table sources or ad-hoc row types + + Create complex and nested table sources with jOOQ + + In the relational data model, + there are many operations performed on entities, i.e. tables in order to join them together + before applying predicates, renaming operations and projections. Apart from the convenience + methods for joining table sources in the + manual's section about the full SELECT syntax, + the Table type itself provides a + rich API for creating joined table sources. See an extract of the Table API: + + table); +TableOnStep join(String sql); +TableOnStep join(String sql, Object... bindings); + +// All other JOIN types are equally overloaded with "String sql" convenience methods... +TableOnStep leftOuterJoin(TableLike table); +TableOnStep rightOuterJoin(TableLike table); +TableOnStep fullOuterJoin(TableLike table); + +// These JOIN types don't take any additional clause +Table crossJoin(TableLike table); +Table naturalJoin(TableLike table); +Table naturalLeftOuterJoin(TableLike table); +Table naturalRightOuterJoin(TableLike table); + +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a +// table into another one using a list of PIVOT values +PivotForStep pivot(Field... aggregateFunctions); +PivotForStep pivot(Collection> aggregateFunctions);]]> + + + The TableOnStep type + contains methods for constructing the ON / ON KEY / USING clauses + + + using(Field... fields); +Table using(Collection> fields); + +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses +TableOnConditionStep onKey() throws DataAccessException; +TableOnConditionStep onKey(TableField... keyFields) throws DataAccessException; +TableOnConditionStep onKey(ForeignKey key);]]> + + + For more details about the PIVOT clause, see the + manual's section about the Oracle PIVOT syntax + -3.2. Conditions -3.2. Conditions +3.3. Conditions +3.3. Conditions The creation of conditions is the part of any database abstraction that attracts the most attention. @@ -4002,8 +4094,8 @@ T_BOOK.TYPE_CODE.in(2, 3, 5, 7, 11, 13) .and(T_BOOK.LANGUA T_BOOK.TYPE_CODE.in(create.select(T_TYPES.CODE).from(T_TYPES)).and(T_BOOK.LANGUAGE.equal("EN")))); -3.3. Aliased tables and fields -3.3. Aliased tables and fields +3.4. Aliased tables and fields +3.4. Aliased tables and fields Aliasing is at the core of SQL and relational algebra. When you join the same entity multiple times, you can rename it to distinguish the @@ -4084,8 +4176,8 @@ GROUP BY FIRST_NAME, LAST_NAME; System.out.println("Books : " + record.getValue("books")); -3.4. Nested SELECT using the IN operator -3.4. Nested SELECT using the IN operator +3.5. Nested SELECT using the IN operator +3.5. Nested SELECT using the IN operator Set equal operations are very common when you want to select multiple records. The IN operator can also be used for semi-joins, though @@ -4149,8 +4241,8 @@ create.select(T_BOOK.getFields()) -3.5. Nested SELECT using the EXISTS operator -3.5. Nested SELECT using the EXISTS operator +3.6. Nested SELECT using the EXISTS operator +3.6. Nested SELECT using the EXISTS operator The EXISTS operator is a bit different from all other SQL elements, as it cannot really be applied to any object in a DSL. @@ -4245,8 +4337,8 @@ SelectConditionStep orNotExists(Select<?> select); -3.6. Other types of nested SELECT -3.6. Other types of nested SELECT +3.7. Other types of nested SELECT +3.7. Other types of nested SELECT Apart from the most common IN and EXISTS clauses that encourage the use of nested selects, SQL knows a few more syntaxes to make use of such constructs. @@ -4389,8 +4481,8 @@ create.select(T_AUTHOR.ID, books) -3.7. UNION and other set operations -3.7. UNION and other set operations +3.8. UNION and other set operations +3.8. UNION and other set operations Unions, differences and intersections are vital set operations taken from set theory. jOOQ's set operation API The @@ -4542,8 +4634,8 @@ create.selectFrom(EMP).where(DEPT.equal("R&D") different. -3.8. Functions and aggregate operators -3.8. Functions and aggregate operators +3.9. Functions and aggregate operators +3.9. Functions and aggregate operators Highly effective SQL cannot do without functions. Operations on VARCHAR, DATE, and NUMERIC types in GROUP BY or ORDER BY clauses allow @@ -4697,8 +4789,8 @@ AggregateFunction varSamp(Field field); -3.9. Stored procedures and functions -3.9. Stored procedures and functions +3.10. Stored procedures and functions +3.10. Stored procedures and functions The full power of your database's vendor-specific extensions can hardly be obtained outside of the @@ -4776,8 +4868,8 @@ create.select(T_PERSON.NAME) DSL either. -3.10. Arithmetic operations and concatenation -3.10. Arithmetic operations and concatenation +3.11. Arithmetic operations and concatenation +3.11. Arithmetic operations and concatenation Your database can do the math for you. Most arithmetic operations are supported, but also string concatenation can be very efficient if done @@ -4848,8 +4940,8 @@ create.select(concat("A", "B", "C")); -3.11. The CASE clause -3.11. The CASE clause +3.12. The CASE clause +3.12. The CASE clause The SQL standard supports a CASE clause, which works very similar to Java's if-else statement. In complex SQL, this is very useful for value @@ -4935,8 +5027,8 @@ ORDER BY CASE FIRST_NAME WHEN 'Paulo' THEN 1 .execute(); -3.12. Type casting -3.12. Type casting +3.13. Type casting +3.13. Type casting Many RDBMS allow for implicit or explicit conversion between types. Apart from true type conversion, this is most often done with casting. @@ -4980,8 +5072,8 @@ public class Factory { } -3.13. When it's just easier: Plain SQL -3.13. When it's just easier: Plain SQL +3.14. When it's just easier: Plain SQL +3.14. When it's just easier: Plain SQL jOOQ cannot foresee all possible vendor-specific SQL features for your database. And sometimes, even jOOQ code becomes too verbose. Then, you diff --git a/jOOQ-website/manual-pdf/jOOQ-manual.pdf b/jOOQ-website/manual-pdf/jOOQ-manual.pdf index 603324b83251f5d50ebcb3d0888689e98987a2ab..1d07852485d79dea8eb9f3575aec52c3fa91e960 100644 GIT binary patch delta 91826 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�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 diff --git a/jOOQ-website/manual-single-page/index.php b/jOOQ-website/manual-single-page/index.php index 2006458365..01dd8760dd 100644 --- a/jOOQ-website/manual-single-page/index.php +++ b/jOOQ-website/manual-single-page/index.php @@ -154,6 +154,9 @@ function printContent() { Complete SELECT syntax
  • +Table sources +
  • +
  • Conditions
  • @@ -1026,8 +1029,8 @@ i.execute();

    Example: INSERT SELECT syntax support

    In some occasions, you may prefer the INSERT SELECT syntax, for instance, when you copy records from one table to another:

    -
    Insert i = create.insertInto(T_AUTHOR_ARCHIVE,
    -           create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.equal(1)));
    +
    Insert i = create.insertInto(T_AUTHOR_ARCHIVE)
    +                 .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.equal(1)));
     i.execute();
    @@ -2620,6 +2623,9 @@ create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    // These join conditions are supported
     SelectJoinStep    on(Condition... conditions);
    +SelectJoinStep onKey();
    +SelectJoinStep onKey(TableField<?, ?>... keyFields);
    +SelectJoinStep onKey(ForeignKey<?, ?> key);
     SelectJoinStep using(Field<?>... fields);
     
     // The example, continued:
    @@ -2627,10 +2633,18 @@ create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
           .from(T_AUTHOR)
           .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));
    -

    See the section about - Conditions +

    + See the section about + conditions to learn more about the many ways - to create Conditions in jOOQ. Now we're half way through. As you can + to create Conditions in jOOQ. + See also the section about + table sources + to learn more about the various ways of creating JOIN + expressions +

    +

    + Now we're half way through. As you can see above, we're back to the SelectJoinStep. This means, we can re-iterate and add another JOIN clause, just like in SQL. Or we go on to the next step, adding conditions in the @@ -2785,8 +2799,71 @@ Record fetchOne(); .where(TBook.LANGUAGE.equal("DE")) .orderBy(TBook.TITLE) .fetchAny();

    +

    +3.2. Table sources

    + When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about + creating custom table sources or ad-hoc row types +

    +

    Create complex and nested table sources with jOOQ

    +

    + In the relational data model, + there are many operations performed on entities, i.e. tables in order to join them together + before applying predicates, renaming operations and projections. Apart from the convenience + methods for joining table sources in the + manual's section about the full SELECT syntax, + the Table type itself provides a + rich API for creating joined table sources. See an extract of the Table API: +

    +
    // These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike<?> table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" convenience methods...
    +TableOnStep  leftOuterJoin(TableLike<?> table);
    +TableOnStep rightOuterJoin(TableLike<?> table);
    +TableOnStep  fullOuterJoin(TableLike<?> table);
    +
    +// These JOIN types don't take any additional clause
    +Table<Record>             crossJoin(TableLike<?> table);
    +Table<Record>           naturalJoin(TableLike<?> table);
    +Table<Record>  naturalLeftOuterJoin(TableLike<?> table);
    +Table<Record> naturalRightOuterJoin(TableLike<?> table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field<?>... aggregateFunctions);
    +PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions);
    + +

    + The TableOnStep type + contains methods for constructing the ON / ON KEY / USING clauses +

    + +
    // The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table<Record> using(Field<?>... fields);
    +Table<Record> using(Collection<? extends Field<?>> fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField<?, ?>... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey<?, ?> key);
    + +

    + For more details about the PIVOT clause, see the + manual's section about the Oracle PIVOT syntax + +

    -3.2. Conditions

    +3.3. Conditions

    The creation of conditions is the part of any database abstraction that attracts the most attention.

    @@ -2880,7 +2957,7 @@ Record fetchOne(); T_BOOK.TYPE_CODE.in(2, 3, 5, 7, 11, 13) .and(T_BOOK.LANGUAGE.equal("FR")).or( T_BOOK.TYPE_CODE.in(create.select(T_TYPES.CODE).from(T_TYPES)).and(T_BOOK.LANGUAGE.equal("EN"))));

    -3.3. Aliased tables and fields

    +3.4. Aliased tables and fields

    Aliasing is at the core of SQL and relational algebra. When you join the same entity multiple times, you can rename it to distinguish the various meanings of the same entity @@ -2959,7 +3036,7 @@ GROUP BY FIRST_NAME, LAST_NAME;

    System.out.println("Author : " + record.getValue("author"));
     System.out.println("Books  : " + record.getValue("books"));

    -3.4. Nested SELECT using the IN operator

    +3.5. Nested SELECT using the IN operator

    Set equal operations are very common when you want to select multiple records. The IN operator can also be used for semi-joins, though

    @@ -3012,7 +3089,7 @@ create.select(T_BOOK.getFields())

    -3.5. Nested SELECT using the EXISTS operator

    The EXISTS operator is a bit different from all other SQL +3.6. Nested SELECT using the EXISTS operator

    The EXISTS operator is a bit different from all other SQL elements, as it cannot really be applied to any object in a DSL.

    The EXISTS operator for use in semi-joins or anti-joins

    @@ -3077,7 +3154,7 @@ SelectConditionStep orNotExists(Select<?> select);

    -3.6. Other types of nested SELECT

    Apart from the most common IN and EXISTS clauses that encourage +3.7. Other types of nested SELECT

    Apart from the most common IN and EXISTS clauses that encourage the use of nested selects, SQL knows a few more syntaxes to make use of such constructs.

    Comparison with single-field SELECT clause

    @@ -3191,7 +3268,7 @@ create.select(T_AUTHOR.ID, books)

    -3.7. UNION and other set operations

    Unions, differences and intersections are vital set operations taken from set theory.

    +3.8. UNION and other set operations

    Unions, differences and intersections are vital set operations taken from set theory.

    jOOQ's set operation API

    The org.jooq.Select API directly supports the UNION @@ -3323,7 +3400,7 @@ create.selectFrom(EMP).where(DEPT.equal("R&D") In this example, the notion of "nested SELECT" and "subselect" are slightly different.

    -3.8. Functions and aggregate operators

    +3.9. Functions and aggregate operators

    Highly effective SQL cannot do without functions. Operations on VARCHAR, DATE, and NUMERIC types in GROUP BY or ORDER BY clauses allow for very elegant queries. @@ -3444,7 +3521,7 @@ AggregateFunction<BigDecimal> varSamp(Field<? extends Number> field)

    -3.9. Stored procedures and functions

    +3.10. Stored procedures and functions

    The full power of your database's vendor-specific extensions can hardly be obtained outside of the database itself. Most modern RDBMS support @@ -3511,7 +3588,7 @@ create.select(T_PERSON.NAME) to embed stored procedures in SQL, they cannot be integrated in jOOQ's DSL either.

    -3.10. Arithmetic operations and concatenation

    +3.11. Arithmetic operations and concatenation

    Your database can do the math for you. Most arithmetic operations are supported, but also string concatenation can be very efficient if done already in the database. @@ -3562,7 +3639,7 @@ create.select(concat("A", "B", "C"));

    -3.11. The CASE clause

    +3.12. The CASE clause

    The SQL standard supports a CASE clause, which works very similar to Java's if-else statement. In complex SQL, this is very useful for value mapping @@ -3637,7 +3714,7 @@ ORDER BY CASE FIRST_NAME WHEN 'Paulo' THEN 1 .orderBy(T_AUTHOR.FIRST_NAME.sortAsc("Paulo", "George")) .execute();

    -3.12. Type casting

    +3.13. Type casting

    Many RDBMS allow for implicit or explicit conversion between types. Apart from true type conversion, this is most often done with casting.

    @@ -3679,7 +3756,7 @@ public class Factory { <T> Field<T> castNull(Class<? extends T> type); }

    -3.13. When it's just easier: Plain SQL

    +3.14. When it's just easier: Plain SQL

    jOOQ cannot foresee all possible vendor-specific SQL features for your database. And sometimes, even jOOQ code becomes too verbose. Then, you shouldn't hesitate to provide jOOQ with plain SQL, as you'd do with diff --git a/jOOQ-website/manual/DSL/CONDITION/index.php b/jOOQ-website/manual/DSL/CONDITION/index.php index f7df89806a..aebddb1602 100644 --- a/jOOQ-website/manual/DSL/CONDITION/index.php +++ b/jOOQ-website/manual/DSL/CONDITION/index.php @@ -20,7 +20,7 @@ function printContent() { ?> - +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Conditionsprevious : nextThe jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Conditionsprevious : next

    Conditions are the SELECT's core business

    @@ -114,7 +114,7 @@ T_BOOK.TYPE_CODE.in(2, 3, 5, 7, 11, 13) .and(T_BOOK.LANGUA T_BOOK.TYPE_CODE.in(create.select(T_TYPES.CODE).from(T_TYPES)).and(T_BOOK.LANGUAGE.equal("EN"))));
    - +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Conditionsprevious : nextThe jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Conditionsprevious : next
    - +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Complete SELECT syntaxprevious : nextThe jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Complete SELECT syntaxprevious : next

    SELECT from anonymous or ad-hoc types

    @@ -109,6 +109,9 @@ create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    // These join conditions are supported
     SelectJoinStep    on(Condition... conditions);
    +SelectJoinStep onKey();
    +SelectJoinStep onKey(TableField<?, ?>... keyFields);
    +SelectJoinStep onKey(ForeignKey<?, ?> key);
     SelectJoinStep using(Field<?>... fields);
     
     // The example, continued:
    @@ -116,10 +119,18 @@ create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
           .from(T_AUTHOR)
           .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));
    -

    See the section about - Conditions +

    + See the section about + conditions to learn more about the many ways - to create Conditions in jOOQ. Now we're half way through. As you can + to create Conditions in jOOQ. + See also the section about + table sources + to learn more about the various ways of creating JOIN + expressions +

    +

    + Now we're half way through. As you can see above, we're back to the SelectJoinStep. This means, we can re-iterate and add another JOIN clause, just like in SQL. Or we go on to the next step, adding conditions in the @@ -276,7 +287,7 @@ Record fetchOne(); .fetchAny();
    - +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Complete SELECT syntaxprevious : nextThe jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Complete SELECT syntaxprevious : next
    + + + + +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Table sourcesprevious : next
    +

    Create complex and nested table sources with jOOQ

    +

    + In the relational data model, + there are many operations performed on entities, i.e. tables in order to join them together + before applying predicates, renaming operations and projections. Apart from the convenience + methods for joining table sources in the + manual's section about the full SELECT syntax, + the Table type itself provides a + rich API for creating joined table sources. See an extract of the Table API: +

    +
    // These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike<?> table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" convenience methods...
    +TableOnStep  leftOuterJoin(TableLike<?> table);
    +TableOnStep rightOuterJoin(TableLike<?> table);
    +TableOnStep  fullOuterJoin(TableLike<?> table);
    +
    +// These JOIN types don't take any additional clause
    +Table<Record>             crossJoin(TableLike<?> table);
    +Table<Record>           naturalJoin(TableLike<?> table);
    +Table<Record>  naturalLeftOuterJoin(TableLike<?> table);
    +Table<Record> naturalRightOuterJoin(TableLike<?> table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field<?>... aggregateFunctions);
    +PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions);
    + +

    + The TableOnStep type + contains methods for constructing the ON / ON KEY / USING clauses +

    + +
    // The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table<Record> using(Field<?>... fields);
    +Table<Record> using(Collection<? extends Field<?>> fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField<?, ?>... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey<?, ?> key);
    + +

    + For more details about the PIVOT clause, see the + manual's section about the Oracle PIVOT syntax + +

    +
    + + + +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Table sourcesprevious : next
    + + diff --git a/jOOQ-website/manual/DSL/TABLESOURCES/index.php b/jOOQ-website/manual/DSL/TABLESOURCES/index.php new file mode 100644 index 0000000000..0d5609af3c --- /dev/null +++ b/jOOQ-website/manual/DSL/TABLESOURCES/index.php @@ -0,0 +1,92 @@ + + + + + + +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Table sourcesprevious : next
    +

    Create complex and nested table sources with jOOQ

    +

    + In the relational data model, + there are many operations performed on entities, i.e. tables in order to join them together + before applying predicates, renaming operations and projections. Apart from the convenience + methods for joining table sources in the + manual's section about the full SELECT syntax, + the Table type itself provides a + rich API for creating joined table sources. See an extract of the Table API: +

    +
    // These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike<?> table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" argument methods...
    +TableOnStep leftOuterJoin(TableLike<?> table);
    +TableOnStep rightOuterJoin(TableLike<?> table);
    +TableOnStep fullOuterJoin(TableLike<?> table);
    +
    +// These JOIN types don't take any additional clause
    +Table<Record> crossJoin(TableLike<?> table);
    +Table<Record> naturalJoin(TableLike<?> table);
    +Table<Record> naturalLeftOuterJoin(TableLike<?> table);
    +Table<Record> naturalRightOuterJoin(TableLike<?> table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field<?>... aggregateFunctions);
    +PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions);
    + +

    + The TableOnStep type + contains methods for constructing the ON / ON KEY / USING clauses +

    + +
    // The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table<Record> using(Field<?>... fields);
    +Table<Record> using(Collection<? extends Field<?>> fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField<?, ?>... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey<?, ?> key);
    + +

    + For more details about the PIVOT clause, see the + manual's section about the Oracle PIVOT syntax + +

    +
    + + + +
    The jOOQ User Manual : DSL or fluent API. Where SQL meets Java : Table sourcesprevious : next
    + + diff --git a/jOOQ-website/manual/DSL/index.php b/jOOQ-website/manual/DSL/index.php index ccf4e6abaa..2ed8fdaf02 100644 --- a/jOOQ-website/manual/DSL/index.php +++ b/jOOQ-website/manual/DSL/index.php @@ -67,6 +67,9 @@ create.select() Complete SELECT syntax
  • +Table sources +
  • +
  • Conditions
  • diff --git a/jOOQ-website/manual/JOOQ/Query/index.php b/jOOQ-website/manual/JOOQ/Query/index.php index f5d3e1b970..cd0003dbe9 100644 --- a/jOOQ-website/manual/JOOQ/Query/index.php +++ b/jOOQ-website/manual/JOOQ/Query/index.php @@ -311,8 +311,8 @@ i.execute();

    Example: INSERT SELECT syntax support

    In some occasions, you may prefer the INSERT SELECT syntax, for instance, when you copy records from one table to another:

    -
    Insert i = create.insertInto(T_AUTHOR_ARCHIVE,
    -           create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.equal(1)));
    +
    Insert i = create.insertInto(T_AUTHOR_ARCHIVE)
    +                 .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.equal(1)));
     i.execute();
    diff --git a/jOOQ-website/manual/index.php b/jOOQ-website/manual/index.php index 9dfc24fc05..446477ba6a 100644 --- a/jOOQ-website/manual/index.php +++ b/jOOQ-website/manual/index.php @@ -160,6 +160,9 @@ function printContent() { Complete SELECT syntax
  • +Table sources +
  • +
  • Conditions
  • diff --git a/jOOQ-website/src/main/resources/manual.xml b/jOOQ-website/src/main/resources/manual.xml index 2d9cc2f68f..06bcd9675b 100644 --- a/jOOQ-website/src/main/resources/manual.xml +++ b/jOOQ-website/src/main/resources/manual.xml @@ -836,8 +836,8 @@ i.execute();

    Example: INSERT SELECT syntax support

    In some occasions, you may prefer the INSERT SELECT syntax, for instance, when you copy records from one table to another:

    -Insert i = create.insertInto(T_AUTHOR_ARCHIVE, - create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.equal(1))); +Insert i = create.insertInto(T_AUTHOR_ARCHIVE) + .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.isTrue())); i.execute(); @@ -2416,19 +2416,30 @@ create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count()) is a top-level interface.

    -// These join conditions are supported +... keyFields); +SelectJoinStep onKey(ForeignKey key); +SelectJoinStep using(Field... fields); // The example, continued: create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count()) .from(T_AUTHOR) - .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID)); + .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));]]> -

    See the section about - +

    + See the section about + to learn more about the many ways - to create Conditions in jOOQ. Now we're half way through. As you can + to create Conditions in jOOQ. + See also the section about + + to learn more about the various ways of creating JOIN + expressions +

    +

    + Now we're half way through. As you can see above, we're back to the SelectJoinStep. This means, we can re-iterate and add another JOIN clause, just like in SQL. Or we go on to the next step, adding conditions in the @@ -2587,6 +2598,74 @@ Record fetchOne(); +

    + Table sources + + When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about + creating custom table sources or ad-hoc row types + + +

    Create complex and nested table sources with jOOQ

    +

    + In the relational data model, + there are many operations performed on entities, i.e. tables in order to join them together + before applying predicates, renaming operations and projections. Apart from the convenience + methods for joining table sources in the + , + the type itself provides a + rich API for creating joined table sources. See an extract of the Table API: +

    + table); +TableOnStep join(String sql); +TableOnStep join(String sql, Object... bindings); + +// All other JOIN types are equally overloaded with "String sql" convenience methods... +TableOnStep leftOuterJoin(TableLike table); +TableOnStep rightOuterJoin(TableLike table); +TableOnStep fullOuterJoin(TableLike table); + +// These JOIN types don't take any additional clause +Table crossJoin(TableLike table); +Table naturalJoin(TableLike table); +Table naturalLeftOuterJoin(TableLike table); +Table naturalRightOuterJoin(TableLike table); + +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a +// table into another one using a list of PIVOT values +PivotForStep pivot(Field... aggregateFunctions); +PivotForStep pivot(Collection> aggregateFunctions);]]> + +

    + The type + contains methods for constructing the ON / ON KEY / USING clauses +

    + + using(Field... fields); +Table using(Collection> fields); + +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses +TableOnConditionStep onKey() throws DataAccessException; +TableOnConditionStep onKey(TableField... keyFields) throws DataAccessException; +TableOnConditionStep onKey(ForeignKey key);]]> + +

    + For more details about the PIVOT clause, see the + +

    +
    +
    + +
    Conditions