Skip to content

SQL Basics (SELECT, WHERE, ORDER BY, LIMIT)

Choose the columns you need.

Select columns
SELECT user_id, country, created_at
FROM users;

Filter rows.

Filter by country
SELECT user_id, country
FROM users
WHERE country = 'IN';
  • =, !=, >, <, >=, <=
  • IN (...)
  • BETWEEN a AND b
  • LIKE '%text%'
  • IS NULL / IS NOT NULL
Multiple filters
SELECT user_id, created_at, plan
FROM users
WHERE country IN ('IN', 'US')
  AND plan != 'free'
  AND created_at >= '2025-01-01';
Sort newest users
SELECT user_id, created_at
FROM users
ORDER BY created_at DESC
LIMIT 20;

Limits are great for exploration.

Inspect sample rows
SELECT *
FROM orders
LIMIT 50;

This trips up almost every beginner: SQL is not executed top-to-bottom in the order you type it. The database picks the table first, filters rows, then figures out which columns to show, and sorts/limits last.

diagram Query execution order mermaid
SQL runs FROM/WHERE first, then picks columns, and sorts/limits last — not top-to-bottom as written.

That’s why you can filter on a column in WHERE that you never mention in SELECT — the engine already resolved WHERE against the full table before it trimmed the column list.

Exercise 2 – WHERE with multiple conditions

Section titled “Exercise 2 – WHERE with multiple conditions”

Exercise 3 – ORDER BY and LIMIT together

Section titled “Exercise 3 – ORDER BY and LIMIT together”

Once you’re comfortable filtering and sorting single tables, move on to Aggregations (COUNT, SUM, AVG) and GROUP BY to start computing metrics instead of just listing rows.

pch.coffeeTagline

pch.coffeeCta

pch.feedbackHeading

pch.feedbackSubheading