Technology and General Blog

The MySQL DENSE_RANK () functionality is a functionality that shows the rank of a row in its partition without gaps in the rating values. This functionality is a window function, which means it has similarities to capabilities this kind of as ROW_Selection() and RANK() functions.

This tutorial shall delve further into how the MySQL dense purpose performs and how we can use it in various databases functions. If you want to follow along with this tutorial, take into consideration downloading the Sakila sample database from the source delivered down below:

Essential Use

MySQL DENSE_RANK() functionality shows the ranks of a row within a partition with no gaps. The ranks of the rows improve by a value of 1 from the exceptional rank benefit of the previous row.

The general syntax of the DENSE_RANK() perform is as:

Allow us examine the previously mentioned query syntax far more intently.

The DENSE_RANK() operate ties to the Decide on clause, which will display the ranks of the rows from the desk specified.

The DENSE_RANK() About sections return the consequence of DENSE_RANK() function and the output held in the column identify specified.

The partition by clause divides the results returned by the FROM clause into partitions. The DENSE_RANK() functionality is used to every partition.

Last but not least, the Buy BY portion specifies the buy of the established rows in each partition.

Illustration Use Circumstance

Let’s use a sample databases to illustrate how we can use the DENSE_RANK() operate. For this example, we shall use the Sakila database and, more especially, the film table in the Sakila database.

Making use of the DENSE_RANK() operate, we can rank the motion pictures by their rental amount, as demonstrated in the query under:

Due to the substantial amount of information on the Sakila database, I will re-arrange the output for much easier looking through and illustration.

The output is below:

If you seem cautiously at the output higher than, you will detect that the resulting output ranges from rank 1 to 3, which corresponds to the rental_charge values in the film desk. The rental_fee values are:

  1. .99 – rank 1
  2. 2.99 – rank 2
  3. 4.99 – rank 3

In the previously mentioned example, we utilized the partition by clause to divide the ensuing sets into a variety of partitions, in this situation, release_calendar year.

Next, we made use of the MySQL order by the statement to order the movies by the rental price in ascending purchase. Ultimately, we utilized the DENSE_RANK() functionality on each individual partition specified in the buy by statement.


In this tutorial, we stated how the DENSE_RANK() function will work in a database and used a actual-globe instance to illustrate how to use it.

You can discover more about DENSE_RANK() advert other window capabilities from the source supplied beneath:

Leave a Reply

Your email address will not be published. Required fields are marked *