[pgsql-jp: 36821] Re: WHEREにSELECTふたつ
    河本陽一
    komoto.yoichi @ kcc.co.jp
       
    2006年 3月  3日 (金) 20:02:12 JST
    
    
  
こうもとです。
Naoki.Kuniyoshi. さんの書いたこと:
>  これだと、1件のみ対象で、それ以上はエラーになりませんか?
>  Oracleだとその場合、エラーになります。
 PostgreSQLでは、対象が複数の場合でも大丈夫でした。
# UPDATE t1 SET f3=f3+1 where (f1)=(SELECT f1 FROM t2 WHERE f5='a02');
UPDATE 2
>  そういう場合は、inを使えば対応できるかと。
> 
> UPDATE t1 SET f3 = 10
> WHERE (f1, f2) in (SELECT f1, f2 FROM t2 WHERE f5='a02');
 PostgreSQLでも、動作しました。
# UPDATE t1 SET f3=f3+1 where (f1) in (SELECT f1 FROM t2 WHERE
f5='a02');
UPDATE 2
======================================================================
河本陽一(こうもとよういち)
mailto:komoto.yoichi @ kcc.co.jp
    
    
pgsql-jp メーリングリストの案内