SQL REFERENCE
Sorting & Limits
Order result sets, limit output, and control NULL positioning.
ORDER BY
SELECT id, name FROM t ORDER BY id ASC;
SELECT id, name FROM t ORDER BY id DESC;
Multi-Key Sorting
SELECT a, b, c FROM t ORDER BY a ASC, b DESC;
SELECT a, b, c FROM t ORDER BY a DESC, b ASC;
Sort by Expression
SELECT id, val * -1.0 AS neg_val FROM t ORDER BY neg_val ASC;
Sort by Column Position
SELECT id, name FROM t ORDER BY 1 ASC;
LIMIT and OFFSET
SELECT id, name FROM t ORDER BY id LIMIT 3;
-- First 3 rows
SELECT id, name FROM t ORDER BY id LIMIT 2 OFFSET 2;
-- Skip 2, take 2: rows 3 and 4
NULLS FIRST / NULLS LAST
SELECT val FROM t ORDER BY NULLIF(val, 50.0) ASC NULLS FIRST LIMIT 1;
-- 50.0 (NULL sorts first)
SELECT val FROM t ORDER BY NULLIF(val, 50.0) ASC NULLS LAST LIMIT 1;
-- 1.0 (NULL sorts last)
SELECT val FROM t ORDER BY NULLIF(val, 50.0) DESC NULLS FIRST LIMIT 1;
-- 50.0
ORDER BY with GROUP BY
SELECT cat, SUM(val) AS total
FROM sortable GROUP BY cat ORDER BY total ASC;
-- a: 30.0, c: 40.0, b: 80.0