# What Does SELECT LIMIT Statement Do in PostgreSQL

> The SELECT LIMIT statement is used to limit data up to a specified number of rows. The number of rows has to be specified after the LIMIT keyword.

Several statements are used in PostgreSQL in order to make the query work and get our desired data from the database. The **SELECT LIMIT** statement is one of these statements. The whole statement is made up of two clauses/statements. The **SELECT** statement is used to get the data from one or more tables in the database and the **LIMIT** clause is optional but sometimes used with the SELECT statement to have a limit constraint on the number of rows returned by the SELECT statement.

In this article, we will see how SELECT LIMIT works in queries.

##  **What Does the SELECT LIMIT Statement Do in PostgreSQL?**

The SELECT LIMIT statement/command is used to get limited rows of specific data from one or multiple tables. The basic syntax for the SELECT LIMIT statement is given as follows:
    
    
    SELECT col_list
     FROM tab_name
       [WHERE Condition]
       [ORDER BY sorting_order]
     LIMIT row_count;

In the above syntax:

● The **SELECT** statement is followed by the name of the column that we want the query to return.

● After the **FROM** statement, we specify the name of the table from where we want to get the data.

● The **LIMIT** clause is followed by the row count meaning the number of rows we want the query to return.

● We can optionally use the **WHERE** clause and the ORDER BY clause. The WHERE clause is followed by the condition that we want to impose on the data.

● The **ORDER BY** statement is also optional, we can get the data in a specific sorted order.

If the row count declared after the LIMIT statement is **0** , the returning value will be an empty set. If the row count is **NULL** the query will return the same result as without a LIMIT statement.

Let’s move towards an example to get more clarity on the concept.

 **Example**

To demonstrate the working of the SELECT LIMIT statement, consider a table named ”test_scores” having 4 columns candidate_is, candidate_name, candidate_gender, and candidate_scores. The table is given as:

Now if we want to get the female top 3 scorers we can write the query as:
    
    
    SELECT *
     FROM test_scores
     WHERE candidate_gender = 'Female'
     ORDER BY candidate_score DESC
     LIMIT 3;

In the above query:

● We have selected all the columns from the table “test_scores” to return as a result of the query.

● We have imposed the condition that the query will return the rows where the candidate is female.

● The data is sorted in descending order.

● And lastly, the number of rows to be returned by the query is limited to 3 rows.

The output of the above query will be:

We can see that the output has returned the top 3 female scorers in the test. Similarly, we can customize the query for other conditions and and number of rows as well.

Sometimes we want to return the value from a specific offset, so we specify the offset in the query like this:
    
    
    SELECT *
     FROM test_scores
     WHERE candidate_gender = 'Female'
     ORDER BY candidate_score DESC
     LIMIT 3 OFFSET 1;

In the above query, we have specified the offset as 1. Now what this query will do is, that it will function the same as above but it will return the data after the first position of the data, not the first record itself. So the output will be as follows:

We can see that the records returned by the query are now after the first position as we have declared the offset as 1.

So this is how the SELECT LIMIT statement works.

##  **Conclusion**

The SELECT LIMIT statement is used to limit data up to a specified number of rows. The number of rows has to be specified after the LIMIT keyword. We can specify some conditions or the sorting order of the data optionally. The resulting data will be limited to a specified number of rows.

---
[View this page online](https://www.commandprompt.com/education/what-does-select-limit-statement-do-in-postgresql/)