🗄️SQL Templates

Basic SELECT Query

Fundamental SELECT query patterns with WHERE, ORDER BY, and LIMIT

Explanation

Master basic SELECT queries to retrieve and filter data from database tables.

Examples

Select all columns
Input
SELECT * FROM users;
Output
Returns all columns and rows from users table
Select specific columns
Input
SELECT name, email FROM users;
Output
Returns only name and email columns
Filter with WHERE
Input
SELECT * FROM users WHERE status = "active";
Output
Returns only active users

Code Examples

SQL
-- Select all columns
SELECT * FROM users;

-- Select specific columns
SELECT id, name, email, created_at 
FROM users;

-- Filter with WHERE
SELECT * 
FROM users 
WHERE status = 'active';

-- Multiple conditions
SELECT * 
FROM users 
WHERE status = 'active' 
  AND created_at > '2024-01-01';

-- OR condition
SELECT * 
FROM users 
WHERE country = 'US' 
   OR country = 'CA';

-- IN operator
SELECT * 
FROM users 
WHERE country IN ('US', 'CA', 'UK');

-- LIKE pattern matching
SELECT * 
FROM users 
WHERE email LIKE '%@gmail.com';

-- ORDER BY
SELECT * 
FROM users 
ORDER BY created_at DESC;

-- LIMIT results
SELECT * 
FROM users 
ORDER BY created_at DESC 
LIMIT 10;

-- OFFSET for pagination
SELECT * 
FROM users 
ORDER BY id 
LIMIT 10 OFFSET 20;

💡 Tips

  • Use specific columns instead of * for better performance
  • Always use WHERE clauses to limit results
  • Add ORDER BY for consistent result ordering
  • Use LIMIT to prevent returning huge datasets
  • Index columns used in WHERE clauses
  • LIKE with leading % is slow (can't use index)
  • Use parameterized queries to prevent SQL injection

⚠️ Common Pitfalls

  • SELECT * is inefficient for large tables
  • Missing WHERE can return millions of rows
  • ORDER BY without LIMIT on large tables is slow
  • LIKE '%text%' can't use indexes
  • Forgetting to escape string values
  • Case sensitivity varies by database