Expression transformation curiosity

Поиск
Список
Период
Сортировка
От Richard Huxton
Тема Expression transformation curiosity
Дата
Msg-id 200308171132.58073.dev@archonet.com
обсуждение исходный текст
Ответы Re: Expression transformation curiosity
Re: Expression transformation curiosity
Список pgsql-sql
I just had a look at EXPLAIN ANALYSE output for an SQL function I'm trying to 
write. The WHERE clause wasn't too complex, but the explain output took up a 
dozen lines.

Boiling the problem down, I've looked at a clause of the form: a OR (b AND c)
which PG converts to: (a OR b) AND (a OR c)

Now these two are equivalent, but it would take me forever to demonstrate that 
with the full query. I'm happy the planner is going to get it right, but I'm 
confused as to why the transformation occurs.

Is it an artefact of displaying the EXPLAIN, or is it actually processed that 
way? You could see how testing "a" twice could be expensive in some 
situations.

Oh, btw - 7.3.2 on this box, I'll be looking at 7.3.3/4 later today.

--  Richard Huxton Archonet Ltd


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

Предыдущее
От: Rod Taylor
Дата:
Сообщение: Re: Do it exist?
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Expression transformation curiosity