Making nulls distinct in Postgres < 15 #111
thecodedrift
announced in
TIL
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
From the postgres docs on unique indexes:
Unfortunately, disabling distinct null values via
NULLS NOT DISTINCTis a pg 15+ feature meaning it might be a while until you can use it. As a workaround, you can instead store a generated column. For example, a nullableuuidcolumn that must still be unique can be solved first by creating the generated columnThen the resulting
generated_columncan be used in a unique index. Thecoalescefunction lets you turn null values into a non-null value ensuring the unique index works as expected. In this caseuuid_nil()returns a special uuid of all0characters.Beta Was this translation helpful? Give feedback.
All reactions