Re: [QUESTIONS] How fully will subselects be implemented?

Started by Bruce Momjianalmost 28 years ago3 messages
#1Bruce Momjian
maillist@candle.pha.pa.us

First, this list is not right place to ask about 6.3 features :)
2nd, subselects within UPDATE are supported.

They are? I thought he wanted to do:

update test set x = (select y from taby)

I didn't think we supported that. Can you confirm that?

3rd, there will be separate select (better say - separate re-scan of
subquery' plan) for each parent row (I assume that you talk about
correlated subqueries) but this will be more efficient than using
SQL-funcs which do _initialization_, scannig, _closing_ of query' plan
for each parent row. When using subqueries performance will be
near the same as for performing Nestloop join.

Good.

-- 
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)
#2Bruce Momjian
maillist@candle.pha.pa.us
In reply to: Bruce Momjian (#1)

Herouth Maoz wrote:

I'm developing a new app, and I constantly run into the need of updating
things by data in related columns.

Since UPDATE doesn't syntatctically support joins, this means that
subselects in UPDATE are a real must.

OK, now I see he only wants the subquery in the where clause. That
clearly does work.

-- 
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)
#3Vadim B. Mikheev
vadim@sable.krasnoyarsk.su
In reply to: Bruce Momjian (#1)

Bruce Momjian wrote:

First, this list is not right place to ask about 6.3 features :)
2nd, subselects within UPDATE are supported.

They are? I thought he wanted to do:

update test set x = (select y from taby)

I didn't think we supported that. Can you confirm that?

Oh, this is not supported, sorry.
And select a, (select b from tab2) from tab1 and so on...

Vadim