FORMULA & SQL / LOOKUPS
The Nth largest value.
Tested, not guessed.
The Excel and Google Sheets formula and the SQL query, each run on the rows below. Open this with your own data ↗
The example rows
| Row | A: Region | B: Rep | C: Amount | D: Order Date | E: Status | F: Customer |
|---|---|---|---|---|---|---|
| 2 | North | Ana | 1,200 | 2026-03-01 | Paid | Jo Smith |
| 3 | South | Ben | 450 | 2026-03-15 | Open | Raj Patel |
| 4 | North | Cy | 300 | 2026-04-02 | Paid | Lee Wong |
| 5 | East | Ana | 980.50 | 2026-04-20 | Paid | Mia Ross |
| 6 | North | Ben | 75 | 2026-05-05 | Open | Jo Smith |
| 7 | West | Dee | 1,640 | 2026-05-18 | Paid | Sam Okoro |
The formula
Excel
=LARGE(C2:C7,2)
LARGE(the Amount column (C2:C7), 2) — which finds the k-th largest value.
Run on the example rows:
Result1200
The SQL
PostgreSQL
SELECT amount FROM ( SELECT amount, ROW_NUMBER() OVER (ORDER BY amount DESC) AS rn FROM sales ) t WHERE rn = 2
Run on the example rows:
| amount |
|---|
| 1200 |
Other databases
MySQL
SELECT amount FROM ( SELECT amount, ROW_NUMBER() OVER (ORDER BY amount DESC) AS rn FROM sales ) t WHERE rn = 2
SQL Server
SELECT amount FROM ( SELECT amount, ROW_NUMBER() OVER (ORDER BY amount DESC) AS rn FROM sales ) t WHERE rn = 2
SQLite
SELECT amount FROM ( SELECT amount, ROW_NUMBER() OVER (ORDER BY amount DESC) AS rn FROM sales ) t WHERE rn = 2
BigQuery
SELECT amount FROM ( SELECT amount, ROW_NUMBER() OVER (ORDER BY amount DESC) AS rn FROM sales ) t WHERE rn = 2
Snowflake
SELECT amount FROM ( SELECT amount, ROW_NUMBER() OVER (ORDER BY amount DESC) AS rn FROM sales ) t WHERE rn = 2
Your own data
Paste your rows into the free tool and it writes this for your columns, then runs it on your data before you copy it. Open the tool ↗