SQL Puzzle: Partial Versus Expression Indexes
Here is an intriguing SQL puzzle we came across in the context of a real-world use case. This post shows the power of advanced RDBMS features such as partial indexes and expression indexes.
Let us assume we have a table in PostgreSQL named users, where each row in the table represents a user. The table is defined as follows.
CREATE TABLE users (
id SERIAL PRIMARY KEY,
email VARCHAR DEFAULT NULL,
name VARCHAR
);
…