[pgsql-jp: 31177] Re: 複数の入力それぞれの最新の値を求めるSQL 文

ISHIDA Akio iakio @ pjam.jpweb.net
2003年 10月 6日 (月) 17:20:43 JST


こんにちは。石田@苫小牧市です。

いい方法かどうかわかりませんが、

select * from test_tbl tt1
 where not exists
      (select * from test_tbl tt2
        where tt1.termid = tt2.termid
          and tt1.dt < tt2.dt)

でどうでしょう。

Hiroya Torii wrote:
> こんにちは。SQL文でいい方法が思いつかず質問です。
> 
> 端末が複数あり、それぞれの端末には番号が振ってあるとします。
> DBには、どの端末から、いつ、どんな値が入力されたかを記録する
> ものとします。
> 
> create table test_tbl {
>     termid int4      ;端末番号
>   , dt     datetime  ;入力時間
>   , val    int4      ;入力データ
> };
> 
> ここから、それぞれの端末の最新データを取りたいと考えました。
(中略)
> ということで解決しているといえば解決しているのですが、
> 何かもっと簡単に書けるのではないかと思い、MLに投げさせて
> もらいました。
> いい方法がありましたらアドバイスください。

--
ISHIDA Akio<iakio @ pjam.jpweb.net>





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