[PATCH] Optimize IS DISTINCT FROM NULL => IS NOT NULL

Поиск
Список
Период
Сортировка
От Marti Raudsepp
Тема [PATCH] Optimize IS DISTINCT FROM NULL => IS NOT NULL
Дата
Msg-id CABRT9RAJqPOJ9Wkjg-g1H8-ov2DWXoC=-2q5bkxT=xmq-39pGA@mail.gmail.com
обсуждение исходный текст
Ответы Re: [PATCH] Optimize IS DISTINCT FROM NULL => IS NOT NULL
Список pgsql-hackers
Hi list,

This patch enables a simple optimization in
eval_const_expressions_mutator. If we know that one argument to
DistinctExpr is NULL then we can optimize it to a NullTest, which can
be an indexable expression.

For example the query:
EXPLAIN (costs off) SELECT * FROM foo WHERE j IS NOT DISTINCT FROM NULL;

Old behavior:
Seq Scan on foo
  Filter: (NOT (j IS DISTINCT FROM NULL::integer))

New behavior:
Index Scan using foo_j_idx on foo
  Index Cond: (j IS NULL)

Regards,
Marti

Вложения

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

Предыдущее
От: Peter Geoghegan
Дата:
Сообщение: Re: pg_stat_statements and planning time
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [PATCH] Optimize IS DISTINCT FROM NULL => IS NOT NULL