Appendix NULL functions

272. NULL functions

The NULL value is not a number, string, date, timestamp, array or JSON object. It’s just NULL, this is why it has its own functions:

COALESCE(val1, val2, …)

The COALESCE() function accepts the arbitrary number of arguments and returns the first non-NULL one. It’s really handy for setting default values:

WITH reading_stats AS ( SELECT user_id, COUNT(*) books_count FROM books_users GROUP BY 1 ) SELECT u.id AS user_id, COALESCE(books_count, 0) AS books_count FROM users u LEFT JOIN reading_stats r ON u.id = r.user_id 

NULLIF(val1, val2)

The NULLIF()...

“well worth the money”
Sign up and check out 37 free lessons and exercises.

Anatoli Makarevich, author of SQL Habit About SQL Habit

Hi, it’s Anatoli, the author of SQL Habit. 👋

SQL Habit is a course (or, as some of the students say, “business simulator”). It’s based on a story of a fictional startup called Bindle. You’ll play a role of their Data Analyst 📊 and solve real-life challenges from Business, Marketing, and Product Management.

SQL Habit course is made of bite-sized lessons (you’re looking at one atm) and exercises. They always have a real-life setting and detailed explanations. You can immediately apply everything you’ve learned at work. 🚀

“well worth the money”

Fluent in SQL in a month

Master Data Analysis with SQL with real life examples from Product Management, Marketing, Finance and more.
-- Type your query here, for example this one -- lists all records from users table: SELECT * FROM users
Loading chart... ⏳