Re: Exclusion constraint with negated operator?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Exclusion constraint with negated operator?
Дата
Msg-id 1799076.1686687341@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Exclusion constraint with negated operator?  (Torsten Förtsch <tfoertsch123@gmail.com>)
Список pgsql-general
=?UTF-8?Q?Torsten_F=C3=B6rtsch?= <tfoertsch123@gmail.com> writes:
> My question is can I somehow express something like
> EXCLUDE (c1 WITH =, c2 with NOT =)
> It seems that's not possible at the moment. But is there any obstacle in
> principle or is it just not implemented?

Well, it'd likely be a bad idea.  Indexes are meant to help you quickly
find a small part of a table that satisfies a condition.  Finding the
probably-much-larger part of the table that doesn't satisfy the condition
is something they are bad at.  This is why "=" is an indexable operator
while "<>" is not.  It's not impossible in principle for "<>" to be an
index operator, but the set of cases where indexing on such a condition
would beat a seqscan is likely to be uselessly small.  By the same
token, EXCLUDE constraints using such a condition would be unpleasantly
inefficient.

            regards, tom lane



В списке pgsql-general по дате отправления:

Предыдущее
От: "Patrick O'Toole"
Дата:
Сообщение: Helping planner to chose sequential scan when it improves performance
Следующее
От: raf
Дата:
Сообщение: Re: SOC II Type 2 report.