Summary: in this tutorial, you will learn how to use the db2 LIMIT clause to limit the number of rows returned by a query.
Introduction to Db2 LIMIT clause
The LIMIT clause allows you to limit the number of rows returned by the query. The LIMIT clause is an extension of the SELECT statement that has the following syntax:
SELECT select_list
FROM table_name
ORDER BY sort_expression
LIMIT n [OFFSET m];
Code language: SQL (Structured Query Language) (sql)In this syntax:
nis the number of rows to be returned.mis the number of rows to skip before returning thenrows.
Another shorter version of LIMIT clause is as follows:
LIMIT m, n;
Code language: SQL (Structured Query Language) (sql)This syntax means skipping m rows and returning the next n rows from the result set.
A table may store rows in an unspecified order. If you don’t use the ORDER BY clause with the LIMIT clause, the returned rows are also unspecified. Therefore, it is a good practice to always use the ORDER BY clause with the LIMIT clause.
Db2 LIMIT clause examples
We will use the books table from the sample database for the demonstration.

1) Db2 LIMIT OFFSET examples
The following query returns all rows from the books table sorted by titles:
SELECT
title,
rating
FROM
books
ORDER BY
title;
Code language: SQL (Structured Query Language) (sql)
To get the first 10 books, you add the LIMIT clause to the above statement:
SELECT
title,
rating
FROM
books
ORDER BY
title
LIMIT
10;
Code language: SQL (Structured Query Language) (sql)
To skip the first 5 books and return the next 10 books, you use the LIMIT OFFSET clause as follows:
SELECT
title,
rating
FROM
books
ORDER BY
title
LIMIT 10 OFFSET 5;
Code language: SQL (Structured Query Language) (sql)
Or in a shorter version:
SELECT
title,
rating
FROM
books
ORDER BY
title
LIMIT 5, 10;
Code language: SQL (Structured Query Language) (sql)2) Using Db2 LIMIT to get top-N rows
The LIMIT clause is useful to get the top-N report e.g., top 10 books that have the highest rating and top 20 books that have the highest number of pages.
This example uses the LIMIT clause to get the top 10 books that have the highest ratings:
SELECT
title,
rating
FROM
books
ORDER BY
rating DESC
LIMIT 10;
Code language: SQL (Structured Query Language) (sql)
In this example:
- First, sort the books by rating from high to low using the
ORDER BYclause - Second, pick the first 10 rows from the sorted result set using the
LIMITclause.
In this tutorial, you have learned how to use the Db2 LIMIT clause to restrict the number of rows returned by a query.