Re: request for sql3 compliance for the update command

Поиск
Список
Период
Сортировка
От Hannu Krosing
Тема Re: request for sql3 compliance for the update command
Дата
Msg-id 1048086940.2580.19.camel@fuji.krosing.net
обсуждение исходный текст
Ответ на Re: request for sql3 compliance for the update command  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: request for sql3 compliance for the update command  (Greg Stark <gsstark@mit.edu>)
Список pgsql-hackers
Tom Lane kirjutas K, 19.03.2003 kell 16:46:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > I wasn't sure it made logical sense to allow correlated subqueries in
> > FROM because the FROM is processed before the WHERE.
>
> It doesn't; in fact it violates the whole semantic model of SQL,
> as far as I can see.  Sub-selects in FROM are (in principle)
> evaluated separately and then joined.  They can't have cross-references.

Makes sense. What I was describing would have been akin to updatable
queries where you first do all the joining and then update one of the
underlying tables.

the more accurate (nonstandard) syntax could have been

SELECT src.val,      tgt.val  FROM updatesrc as src FOR UPDATE,      updatetgd as tgtWHERE src.id = tgt.id  SET src.val
=tgt.val
 
;

> I think there is some weird construct in SQL99 that alters this behavior,
> though.

You probably mean WITH, which acts like FROM but has lexically previous
(or all in case of WITH RECURSIVE) sub-selects in its namespace.

----------------
Hannu




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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: request for sql3 compliance for the update command
Следующее
От: Stephan Szabo
Дата:
Сообщение: Re: Another naive question, inheritance and foreign key