RE: Very slow query, Help please!

Поиск
Список
Период
Сортировка
От Mike Mascari
Тема RE: Very slow query, Help please!
Дата
Msg-id 01C0C482.AB269940.mascarm@mascari.com
обсуждение исходный текст
Ответ на Very slow query, Help please!  (Igor <dbmanager@osb368.nnov.ru>)
Список pgsql-general
You should rewrite your query using NOT EXISTS:

insert into LTable
select * from STable
where NOT EXISTS (
SELECT L.ID FROM LTable L
WHERE L.ID = ID);

This will use an index scan on LTable. This is also a FAQ item BTW.

Hope that helps,

Mike Mascari
mascarm@mascari.com


-----Original Message-----
From:    Igor [SMTP:dbmanager@osb368.nnov.ru]
Sent:    Saturday, April 14, 2001 12:33 AM
To:    pgsql-general@postgresql.org
Subject:    [GENERAL] Very slow query, Help please!

Hi !

Help me please to resolv my problem.

I have two tables . One of them is large (say 100000 records)
with unique index on "ID"
and the second table (5000 records ) which i have to insert
into the first table , but the second table have much records,
which have many duplicate values in "ID" . and this is
the query which i used for insertion:

  insert into LTable select * from STable
    where ID not in (select ID from LTable )

this query takes much time. and moreover - for big tables
i couldn't got result of query for about an hour, it looks
like so that it is die...

May be there is anoter way for insertion ?


Thanks for any suggestion!

Igor



---------------------------(end of
broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to
majordomo@postgresql.org

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

Предыдущее
От: "Marc G. Fournier"
Дата:
Сообщение: FOR IMMEDIATE RELEASE: PostgreSQL v7.1 Release Announcement
Следующее
От: "Oliver Elphick"
Дата:
Сообщение: Re: Order in CREATE VIEW