﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
34701	Add support for NULLS [NOT] DISTINCT to UniqueConstraint	Simon Charette	nobody	"PostgresSQL 15 is one of the first databases to implement the F292 SQL feature present in the 2023 standard that allows to specify whether or not null values should be considered as distinct in unique constraints.

While most backends default to implicit `NULLS DISTINCT` some backends don't, most notably SQL Server (cff59bedc23fd4d53557f677ddc42402b56963d0).

I suggest we add a `nulls_distinct:Optional[bool]=None` option to `UniqueConstraint` so it preserves it's ''default to backend treatment of nulls'' behaviour while allowing it to be set explicitly on backends that support it.

- [https://modern-sql.com/caniuse/unique-nulls-not-distinct Article on the subject]
- [https://modern-sql.com/caniuse/F292 SQL:F292]
- [https://forum.djangoproject.com/t/support-nulls-not-distinct-postgres-15-clause/21973/3 Recent thread on the subject in the forums]
"	New feature	assigned	Database layer (models, ORM)	4.2	Normal				Unreviewed	0	0	0	0	0	0
