mysql:13087
From: buda <buda <buda@xxxxxxxxxx>>
Date: Thu, 08 Jun 2006 21:08:12 +0900
Subject: [mysql 13087] Re: 順位をつけたいのですが
はじめまして 変数を使うのはダメなのでしょうか? set @rank:=0; select @rank:=@rank+1,その他 from where group by order by ktime asc,s0.nenrei asc > risuと申します。お世話になっております。 > マラソンのタイム順位を出そうと > > SELECT k0.kno, s0.scode, s0.namae, > s0.frigana, sei.seibetsu, s0.nenrei, > MIN(k0.ktime) As ktime, COUNT(k1.ktime) As rank > FROM sensyu As s0, sei, kiroku As k0, kiroku As k1 > WHERE s0.scode=k0.scode And s0.seicode=sei.seicode > And k1.ktime <= k0.ktime GROUP BY k0.kno ORDER BY ktime; > > でトータルのTIME順の順位であるrankで順位付けをおこなっているのですが > 現在のSQLでは同着のタイムがあったとき順位が飛んでしまい同じ順位になってしま > います。 > > No. ゼッケン 氏名 ふりがな 性別 年齢 TIME 順位 > --+------+--------+-------+----+----+-------+----- > 10 5 田中一郎 たなか 男 54 06:59:59 1 > --+------+--------+-------+----+----+-------+----- > 11 196 鈴木次郎 すずき 男 42 07:00:00 3 > --+------+--------+-------+----+----+-------+----- > 9 7 佐藤三郎 さとう 男 48 07:00:00 3 > --+------+--------+-------+----+----+-------+----- > そこで、 > 以下のように > > No. ゼッケン 氏名 ふりがな 性別 年齢 TIME 順位 > --+------+--------+-------+----+----+-------+----- > 10 5 田中一郎 たなか 男 54 06:59:59 1 > --+------+--------+-------+----+----+-------+----- > 9 7 佐藤三郎 さとう 男 48 07:00:00 2 > --+------+--------+-------+----+----+-------+----- > 11 196 鈴木次郎 すずき 男 42 07:00:00 3 > --+------+--------+-------+----+----+-------+----- > 「同着ならば年齢が上の人に順位をつける」 > というふうにできるでしょうか? > よろしくおねがいします。
13086 2006-06-08 17:54 ["rishiri.info" <mail] 順位をつけたいのですが -> 13087 2006-06-08 21:08 ┗[buda <buda@xxxxxxxxx] 13088 2006-06-08 21:27 ┗["rishiri.info" <mail]