Docs
Docs/Filtering & Sorting/WHERE Clause

WHERE Clause

Filter rows based on conditions

The WHERE clause filters which rows are returned. It's essential for retrieving specific data.

Basic Syntax

SELECT columns
FROM table
WHERE condition;

Simple Conditions

-- Exact match
SELECT * FROM users WHERE status = 'active';

-- Numeric comparison
SELECT * FROM products WHERE price > 100;

-- Date comparison
SELECT * FROM orders WHERE created_at > '2024-01-01';

Multiple Conditions

-- AND: All conditions must be true
SELECT * FROM users 
WHERE status = 'active' 
  AND country = 'USA'
  AND age >= 18;

-- OR: Any condition can be true
SELECT * FROM products 
WHERE category = 'Electronics' 
   OR category = 'Computers';

-- Combining AND and OR
SELECT * FROM orders 
WHERE status = 'pending' 
  AND (total > 100 OR priority = 'high');

WHERE with Expressions

-- Filter on calculated values
SELECT * FROM order_items 
WHERE price * quantity > 500;

-- Filter using functions
SELECT * FROM users 
WHERE LENGTH(name) > 10;

-- Filter using LOWER/UPPER for case-insensitive search
SELECT * FROM products 
WHERE LOWER(name) = 'iphone';

Performance Tip: Avoid using functions on columns in WHERE clauses when possible.WHERE LOWER(name) = 'john' can't use indexes, but WHERE name = 'John' can.

Need help?

Join our Discord community for support and discussions.

Join Discord