Skip to main content
SQL โ€ข LESSON 26

SQL RANK() & DENSE_RANK()

How do we rank items with tie handling (gaps vs contiguous ranks)?

Advancedโฑ 3 Minutesโญ 450 XP
๐Ÿค” THE QUESTION

How do we rank items with tie handling (gaps vs contiguous ranks)?

๐Ÿ’ก WHAT IS IT?

RANK() leaves gaps after ties (1, 2, 2, 4), while DENSE_RANK() assigns consecutive numbers (1, 2, 2, 3).

๐ŸŽฏ WHAT IS IT USED FOR?

Leaderboards, competition scoring, top salary tiers with accurate tie handling.

๐Ÿ’ป EXAMPLE
SELECT name,
salary,
RANK() OVER (
  ORDER BY salary DESC
) AS rank,
DENSE_RANK() OVER (
  ORDER BY salary DESC
) AS dense_rank
FROM employees;

๐ŸŽฏ Mission Objectives

Practice typing production-grade SQL code for SQL RANK() & DENSE_RANK().

  • โœ“ RANK()
  • โœ“ DENSE_RANK()
  • โœ“ Tie handling
  • โœ“ Window ordering