Top Description Methods
org.jooq

public Interface SelectLimitStep<R extends org.jooq.Record>

extends SelectForUpdateStep<R extends Record>
Known Direct Subinterfaces
org.jooq.SelectOrderByStep, org.jooq.SelectSeekStep1, org.jooq.SelectSeekStep10, org.jooq.SelectSeekStep11, org.jooq.SelectSeekStep12, org.jooq.SelectSeekStep13, org.jooq.SelectSeekStep14, org.jooq.SelectSeekStep15, org.jooq.SelectSeekStep16, org.jooq.SelectSeekStep17, org.jooq.SelectSeekStep18, org.jooq.SelectSeekStep19, org.jooq.SelectSeekStep2, org.jooq.SelectSeekStep20, org.jooq.SelectSeekStep21, org.jooq.SelectSeekStep22, org.jooq.SelectSeekStep3, org.jooq.SelectSeekStep4, org.jooq.SelectSeekStep5, org.jooq.SelectSeekStep6, org.jooq.SelectSeekStep7, org.jooq.SelectSeekStep8, org.jooq.SelectSeekStep9, org.jooq.SelectSeekStepN
Static Imports
org.jooq.SQLDialect.CUBRID, .SQLDialect.DERBY, .SQLDialect.FIREBIRD, .SQLDialect.H2, .SQLDialect.HSQLDB, .SQLDialect.IGNITE, .SQLDialect.MARIADB, .SQLDialect.MYSQL, .SQLDialect.POSTGRES, .SQLDialect.SQLITE, .SQLDialect.YUGABYTEDB

This type is used for the Select's DSL API when selecting generic Record types.

Example:


-- get all authors' first and last names, and the number
-- of books they've written in German, if they have written
-- more than five books in German in the last three years
-- (from 2011), and sort those authors by last names
-- limiting results to the second and third row

  SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    FROM T_AUTHOR
    JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
   WHERE T_BOOK.LANGUAGE = 'DE'
     AND T_BOOK.PUBLISHED > '2008-01-01'
GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
  HAVING COUNT(*) > 5
ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
   LIMIT 2
  OFFSET 1
     FOR UPDATE
      OF FIRST_NAME, LAST_NAME
      NO WAIT
Its equivalent in jOOQ

create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
      .from(T_AUTHOR)
      .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
      .where(TBook.LANGUAGE.equal("DE"))
      .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
      .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
      .having(create.count().greaterThan(5))
      .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
      .limit(2)
      .offset(1)
      .forUpdate()
      .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
      .noWait();
Refer to the manual for more details

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:

Author
Lukas Eder

Method Summary

Modifier and TypeMethod and Description
public @NotNull SelectLimitPercentStep<R>
limit(Number numberOfRows)

Add a LIMIT clause to the query

If there is no LIMIT or TOP clause in your RDBMS, this may be emulated with a ROW_NUMBER() window function and nested SELECT statements.

public @NotNull SelectLimitPercentStep<R>
limit(Field<? extends Number> numberOfRows)

Deprecated as a consequence of Field being deprecated.
Add a LIMIT clause to the query.
public @NotNull SelectWithTiesAfterOffsetStep<R>
limit(Number offset, Number numberOfRows)

Add a LIMIT clause to the query

Note that some dialects do not support bind values at all in LIMIT or TOP clauses!

public @NotNull SelectLimitPercentAfterOffsetStep<R>
limit(Number offset, Field<? extends Number> numberOfRows)

Deprecated as a consequence of Field being deprecated.
Add a LIMIT clause to the query.
public @NotNull SelectLimitPercentAfterOffsetStep<R>
limit(Field<? extends Number> offset, Number numberOfRows)

Deprecated as a consequence of Field being deprecated.
Add a LIMIT clause to the query.
public @NotNull SelectLimitPercentAfterOffsetStep<R>
limit(Field<? extends Number> offset, Field<? extends Number> numberOfRows)

Deprecated as a consequence of Field being deprecated.
Add a LIMIT clause to the query.
public @NotNull SelectLimitAfterOffsetStep<R>
offset(Number offset)

Add a 0-based OFFSET clause to the query.

public @NotNull SelectLimitAfterOffsetStep<R>
offset(Field<? extends Number> offset)

Deprecated as a consequence of Field being deprecated.
Add a 0-based OFFSET clause to the query.
Inherited from org.jooq.SelectForUpdateStep:
forKeyShareforNoKeyUpdateforShareforUpdatewithCheckOptionwithReadOnly

Method Detail

limitback to summary
public @NotNull SelectLimitPercentStep<R> limit(Number numberOfRows)

Add a LIMIT clause to the query

If there is no LIMIT or TOP clause in your RDBMS, this may be emulated with a ROW_NUMBER() window function and nested SELECT statements.

This is the same as calling limit(Number, Number) with offset = 0, or calling .limit(numberOfRows).offset(0)

Annotations
@NotNull
@CheckReturnValue
@Support
limitback to summary
public @NotNull SelectLimitPercentStep<R> limit(Field<? extends Number> numberOfRows)

Deprecated

as a consequence of Field being deprecated. See corresponding docs for further information.

Add a LIMIT clause to the query.

Note that some dialects do not support bind values at all in LIMIT or TOP clauses!

If there is no LIMIT or TOP clause in your RDBMS, or the LIMIT or TOP clause does not support bind values, this may be emulated with a ROW_NUMBER() window function and nested SELECT statements.

This is the same as calling limit(Number, Number) with offset = 0, or calling .limit(numberOfRows).offset(0)

Annotations
@NotNull
@CheckReturnValue
@Support
limitback to summary
public @NotNull SelectWithTiesAfterOffsetStep<R> limit(Number offset, Number numberOfRows)

Add a LIMIT clause to the query

Note that some dialects do not support bind values at all in LIMIT or TOP clauses!

If there is no LIMIT or TOP clause in your RDBMS, or if your RDBMS does not natively support offsets, this is emulated with a ROW_NUMBER() window function and nested SELECT statements.

Annotations
@NotNull
@CheckReturnValue
@Support
limitback to summary
public @NotNull SelectLimitPercentAfterOffsetStep<R> limit(Number offset, Field<? extends Number> numberOfRows)

Deprecated

as a consequence of Field being deprecated. See corresponding docs for further information.

Add a LIMIT clause to the query.

Note that some dialects do not support bind values at all in LIMIT or TOP clauses!

If there is no LIMIT or TOP clause in your RDBMS, or the LIMIT or TOP clause does not support bind values, or if your RDBMS does not natively support offsets, this may be emulated with a ROW_NUMBER() window function and nested SELECT statements.

Annotations
@NotNull
@CheckReturnValue
@Support
limitback to summary
public @NotNull SelectLimitPercentAfterOffsetStep<R> limit(Field<? extends Number> offset, Number numberOfRows)

Deprecated

as a consequence of Field being deprecated. See corresponding docs for further information.

Add a LIMIT clause to the query.

Note that some dialects do not support bind values at all in LIMIT or TOP clauses!

If there is no LIMIT or TOP clause in your RDBMS, or the LIMIT or TOP clause does not support bind values, or if your RDBMS does not natively support offsets, this may be emulated with a ROW_NUMBER() window function and nested SELECT statements.

Annotations
@NotNull
@CheckReturnValue
@Support
limitback to summary
public @NotNull SelectLimitPercentAfterOffsetStep<R> limit(Field<? extends Number> offset, Field<? extends Number> numberOfRows)

Deprecated

as a consequence of Field being deprecated. See corresponding docs for further information.

Add a LIMIT clause to the query.

Note that some dialects do not support bind values at all in LIMIT or TOP clauses!

If there is no LIMIT or TOP clause in your RDBMS, or the LIMIT or TOP clause does not support bind values, or if your RDBMS does not natively support offsets, this may be emulated with a ROW_NUMBER() window function and nested SELECT statements.

Annotations
@NotNull
@CheckReturnValue
@Support
offsetback to summary
public @NotNull SelectLimitAfterOffsetStep<R> offset(Number offset)

Add a 0-based OFFSET clause to the query.

Offsets are 0-based as they describe the number of rows to skip.

If there is no LIMIT … OFFSET or TOP clause in your RDBMS, or if your RDBMS does not natively support offsets, this is emulated with a ROW_NUMBER() window function and nested SELECT statements.

Annotations
@NotNull
@CheckReturnValue
@Support
offsetback to summary
public @NotNull SelectLimitAfterOffsetStep<R> offset(Field<? extends Number> offset)

Deprecated

as a consequence of Field being deprecated. See corresponding docs for further information.

Add a 0-based OFFSET clause to the query.

Offsets are 0-based as they describe the number of rows to skip.

If there is no LIMIT … OFFSET or TOP clause in your RDBMS, or if your RDBMS does not natively support offsets, this is emulated with a ROW_NUMBER() window function and nested SELECT statements.

Annotations
@NotNull
@CheckReturnValue
@Support