Re: [HACKERS] Table aliases in delete statements?

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: [HACKERS] Table aliases in delete statements?
Дата
Msg-id 199912080105.UAA18591@candle.pha.pa.us
обсуждение исходный текст
Ответ на Re: [HACKERS] Table aliases in delete statements?  (Keith Parks <emkxp01@mtcc.demon.co.uk>)
Список pgsql-hackers
> >Don't use s1.  Just refer to native deltest in the subquery.  That
> >should reference the outer table.
> 
> That doesn't seem to work as 3 rows are deleted and not just the
> two duplicates.
> 
> emkxp01=> delete from deltest where respdate not in ( select min(s2.respdate) 
> from deltest s2 where sessionid = s2.sessionid);
> DELETE 3
> emkxp01=> select * from deltest;
>  sessionid |           respdate           
> -----------+------------------------------
>          1 | Tue 07 Dec 22:32:01 1999 GMT
> (1 row)

No.  Use:

emkxp01=> delete from deltest where respdate not in ( select min(s2.respdate) 
from deltest s2 where deltest.sessionid = s2.sessionid);                     ^^^^^^^

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


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

Предыдущее
От: Lamar Owen
Дата:
Сообщение: Re: [HACKERS] perl-DBD-Pg (was Re: BOUNCE pgsql-ports@postgreSQL.org: Non-member submission from[Joe Brenner ] (fwd))
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [HACKERS] Table aliases in delete statements?