Re: Размер

Поиск
Список
Период
Сортировка
От Alexander M. Pravking
Тема Re: Размер
Дата
Msg-id 20050526102528.GY990@dyatel.antar.bryansk.ru
обсуждение исходный текст
Ответ на Re: Размер SQL-запроса.  (Oleg Bartunov <oleg@sai.msu.su>)
Ответы Re: Размер  ("Denis A. Egorov" <denis.egorov@virtonconsultants.com>)
Список pgsql-ru-general
On Thu, May 26, 2005 at 11:49:34AM +0300, Denis A. Egorov wrote:
> Вот версия postgresql:
>
> PostgreSQL 7.4.8 on i386-portbld-freebsd4.10, compiled by GCC 2.95.4
>
> Это о входящих данных:
>
>  head -c 100 big.sql
> SELECT id FROM test WHERE id NOT IN ( '10', '100', '1000', '10000', '10001', '10002
>
>  wc sql_big.sql
> 1   14091  122660 sql_big.sql

У тебя в WHERE только NOT IN или ещё что-то?
Postgres иногда не очень умно делает эквивалентные преобразования
булевых выражений, в определённых случаях в результате они получаются
просто конскими.

Как решение могу посоветовать создание временной таблицы (скажем,
denied), куда сложить нужные id'ы и заменить твой NOT IN на
NOT IN (SELECT id FROM test) или на NOT EXISTS (SELECT 1 FROM denied d
WHERE d.id = test.id);


--
Fduch M. Pravking

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

Предыдущее
От: "Ivan Yu. Zolotukhin"
Дата:
Сообщение: Case insensitivity in Postgres
Следующее
От: Oleg Bartunov
Дата:
Сообщение: Re: Размер SQL-запроса.