mysql:4175
From: Shinichi Moritani <Shinichi Moritani <ml@xxxxxxxxxx>>
Date: Thu, 16 Aug 2001 10:22:42 +0900
Subject: [mysql 04175] Re: GROUP BY について
森谷です。 とみたさん、ありがとうございます。 >> SELECT *,MAX(t1.time) AS maxtime FROM table1 GROUP BY fromid, toid ORDER BY maxtime >> DESC; >> >> 上記のSQLを実行した場合、 >> fromid, toid の組み合わせでグルーピングされると思いますが、 >> 表示では time と maxtime の値が異なっている場合があります。 > >これはそういうものらしいですよ。 そうなんですかぁ・・・ ORDER BY とかで、うまく制御できないものかと思っていましたが、 だめなんですねぇ。 >> GROUP BY でグルーピングされたレコードのうち、 >> time が一番新しいレコードのみを抜き出したいのですが、 >> どなたか良い方法をご存知でしたら、ご教授頂ければと思います。 > >テンポラリテーブルを使って、 > >CREATE TEMPORARY TABLE tmp SELECT fromid, toid, MAX(time) AS maxtime FROM table1 GROUP BY fromid, toid; >SELECT no, tmp.fromid, tmp.toid, maxtime FROM table1, tmp WHERE table1.fromid=tmp.fromid AND table1.toid=tmp.toid AND table1.time=tmp.maxtime; > >…とかで、できませんかね。試してませんが…。 これ!行けそうです。 コマンドラインからは、旨く行っている感じです。 実際にはPHPにて起動させるので、そこが旨く行けば言うこと無しです。 *************************** Name : Shinichi Moritani Mail : ml@xxxxxxxxxx ***************************
4171 2001-08-15 19:09 [Shinichi Moritani <m] GROUP BY について 4174 2001-08-15 21:31 ┗[とみたまさひろ <tomm] -> 4175 2001-08-16 10:22 ┗[Shinichi Moritani <m] 4177 2001-08-16 15:23 ┗[Shinichi Moritani <m] Re: GROUP BY について [ 報告 ] 4179 2001-08-16 20:14 ┗[とみたまさひろ <tomm]