[pgsql-jp: 32549] Re: ある列のデータが同一で別のある列のデータが最大なものの抽出

馬場 泰明 ( 川上) kawakami @ mxe.nes.nec.co.jp
2004年 3月 23日 (火) 16:43:51 JST


こんにちは。馬場です。

Pochiさん、とりあえずうまくいったみたいでよかったです!

それと、もしハズしていたら申し訳ないのですが、
where のところで、trai_no=(select 〜 にしてしまうと、
サブクエリー側で複数行を返す場合、エラーになってしまうことが
あります。

そういった場合は
where trai_no in (select〜 とか where trai_no =any (select〜 とかで
複数行返す用の比較演算子を使ってみてください。

また、今回使った
where (colA, colB) in ( select colA, colB 〜
というのは 複数行副問合せと呼ぶみたいです。

以上ご参考になれば幸いです。


/ばば やすあき

2004/03/23 16:30:23 +0900にPochi <Pochi @ ppm-ja.com>さんに頂いた
「[pgsql-jp: 32548] Re: ある列のデータが同一で別のある列のデータが最大なものの抽出」への返事です。
>Pochiです。
>
>馬場さん、すばやいレス有り難うございます!
>とりあえず教えていただいたSQL文をそのままpsqlで打ってみたところ上手く表
>示されているようです。
> 分析はこれからですが、取り敢えず敗因はwhereのところで、
>"trai_no=(selectでそのIDでの最大値出す)"としていたのが原因のようです(実
>際エラーもwhereがおかしいと言われていたのですがどう変えればいいのかが分
>からなかった)。
> 多分これでviewも作れると思います。有り難うございました。
>
>-- 
>Pochi Pochi @ ppm-ja.com



pgsql-jp メーリングリストの案内