Package org.jooq

Interface UpdateOrderByStep<R extends Record>

  • All Superinterfaces:
    Attachable, java.lang.AutoCloseable, java.util.concurrent.Flow.Publisher<java.lang.Integer>, org.reactivestreams.Publisher<java.lang.Integer>, Query, QueryPart, RowCountQuery, java.io.Serializable, Statement, Update<R>, UpdateFinalStep<R>, UpdateLimitStep<R>, UpdateReturningStep<R>
    All Known Subinterfaces:
    UpdateConditionStep<R>, UpdateFromStep<R>, UpdateSetMoreStep<R>, UpdateWhereStep<R>

    public interface UpdateOrderByStep<R extends Record>
    extends UpdateLimitStep<R>
    This type is used for the Update's DSL API.

    Example:

     DSLContext create = DSL.using(configuration);
    
     create.update(table)
           .set(field1, value1)
           .set(field2, value2)
           .where(field1.greaterThan(100))
           .execute();
     

    Referencing XYZ*Step types directly from client code

    It is usually not recommended to reference any XYZ*Step types directly from client code, or assign them to local variables. When writing dynamic SQL, creating a statement's components dynamically, and passing them to the DSL API statically is usually a better choice. See the manual's section about dynamic SQL for details: https://www.jooq.org/doc/latest/manual/sql-building/dynamic-sql.

    Drawbacks of referencing the XYZ*Step types directly:

    • They're operating on mutable implementations (as of jOOQ 3.x)
    • They're less composable and not easy to get right when dynamic SQL gets complex
    • They're less readable
    • They might have binary incompatible changes between minor releases
    Author:
    Lukas Eder
    • Method Detail

      • orderBy

        @Support
        UpdateLimitStep<R> orderBy​(int... fieldIndexes)
        Add an ORDER BY clause to the query.

        Indexes start at 1 in SQL!

        Note, you can use orderBy(DSL.val(1).desc()) or orderBy(DSL.literal(1).desc()) to apply descending ordering