mysql:13040
From: "F.Y" <"F.Y" <fumi_sby@xxxxxxxxxx>>
Date: Thu, 1 Jun 2006 21:45:51 +0900 (JST)
Subject: [mysql 13040] Re: UNION クエリで躓いています
desc つける場所間違えた。 and このまんまで走るかどうかは知らない。 そういやUNIONでくっつけるんだから4P,9P,13Pもってくるのにgroup byがつら いか。 ま、view使うか一時表使うか副問い合わせにしちゃうか、もうちょいでできる でしょ。 じゃなくって、すまん、根本的に読んでなかった。 13Pの通過時間の早いほうから順位をつけた選手リストを出したいってことのよ うな気がしてきた。 それならUNION使うことない。と思う。 こんな感じでできるんじゃないかな。 set @r1 = 0; select scode, namae, max(if(kcode = 4, ktime, null)) as 4P, max(if(kcode = 9, ktime, null)) as 9P, max(if(kcode = 13, ktime, null)) as 13P, @r1:=(@r1 + 1) as rank from kiroku,sensyu,kukan where kiroku.scode = sensyu.scode and kukan.kcode = kiroku.kcode group by scode, namae order by 13P desc; --- "F.Y" <fumi_sby@xxxxxxxxxx> からのメッセージ: > UNIONの問題なんてないように見えるけどね。 > 要は、namaeで絞りたい、順番つけたいってことじゃないの? > なら単純化するとこんな感じ。 > > set @r1=0; > select scode, namae, min(p4), min(p9), min(p13), @r1:=(@r1+1) as > rank > from table > group by scode, namae > order by scode, namae desc; > > 4P, 9P, 13Pの選択基準がわからんけど。 -------------------------------------- Let's start Yahoo! Auction - Free Campaign Now! http://pr.mail.yahoo.co.jp/auction/
13038 2006-06-01 20:26 ["rishiri.info" <mail] UNIONクエリで躓いています 13039 2006-06-01 21:20 ┗["F.Y" <fumi_sby@xxxx] -> 13040 2006-06-01 21:45 ┗["F.Y" <fumi_sby@xxxx] 13041 2006-06-01 22:45 ┗["rishiri.info" <mail]