FORMULA & SQL / LOOKUPS
Look up the nearest lower 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
=XLOOKUP(500,A2:A7,C2:C7,"Not found",-1)
The value from the Amount column (C2:C7) on the row where the Region column (A2:A7) matches 500 (or "Not found" if there is no match).
Run on the example rows:
ResultNot found
The SQL
PostgreSQL
SELECT amount FROM sales WHERE region <= 500 ORDER BY region DESC LIMIT 1
Run on the example rows:
Other databases
MySQL
SELECT amount FROM sales WHERE region <= 500 ORDER BY region DESC LIMIT 1
SQL Server
SELECT TOP 1 amount FROM sales WHERE region <= 500 ORDER BY region DESC
SQLite
SELECT amount FROM sales WHERE region <= 500 ORDER BY region DESC LIMIT 1
BigQuery
SELECT amount FROM sales WHERE region <= 500 ORDER BY region DESC LIMIT 1
Snowflake
SELECT amount FROM sales WHERE region <= 500 ORDER BY region DESC LIMIT 1
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 ↗