Bored Analyst
SQL

Useful Functions and Defensive Coding

Safe Division

revenue / NULLIF(cost, 0) AS margin

Returns NULL instead of error when denominator is zero.

COALESCE

COALESCE(column, 0)
COALESCE(col1, col2, col3)

Date Manipulation

DATE_TRUNC('month', date_col)
EXTRACT(YEAR FROM date_col)
CURRENT_DATE - INTERVAL '6 months'
AGE(date1, date2)

String Functions

CONCAT(first_name, ' ', last_name)
LOWER(email)
TRIM(name)
SUBSTRING(col FROM 1 FOR 3)

CASE Expressions

CASE
  WHEN score >= 90 THEN 'A'
  WHEN score >= 80 THEN 'B'
  ELSE 'C'
END AS grade
ORDER BY CASE status
  WHEN 'HIGH' THEN 1
  WHEN 'MEDIUM' THEN 2
  WHEN 'LOW' THEN 3
END

On this page