mysql:13069
From: "F.Y" <"F.Y" <fumi_sby@xxxxxxxxxx>>
Date: Mon, 5 Jun 2006 17:26:20 +0900 (JST)
Subject: [mysql 13069] Re: グループ化された情報の TOP 10を取得する方法
失礼、4.0.26って最初に書いてあった…orz サブクエリ使えないなぁ… 複数列はconcat(名称1, 名称2)で扱えば終わりだけど。 一時表用意してそこに入れてから引っ張る、のが簡単だと思う。 というか、老眼気味のわしではサブクエリなしでselect文一発でtop10のみ引っ 張るのはできんかも。 そこのワカモノ、なんか思いつかない? あと、気付いてると思うが set @chk = "", @r1 = 0; をはしょってた。 --- Yoshio Kawano <kawano@xxxxxxxxxx> からのメッセージ: > 回答、ありがとうございました。 > > 度重なる、説明不足にて、誠に申し訳けありません。 > > 名称1,2,3に登録されている名称は、私が皆様に情報のグループ構成に ついて説 > 明する為に、勝手に付けた情報です。 > 申し訳けありませんでした。 > > 実際に名称1,2,3に登録される名称は、色々な単語です。 > 例えば、 > 名称1=ジョン,名称2=F,名称3=ケネディ > 名称1=松下,名称2=電気,名称3=パナソニック > 名称1=松下,名称2=電気,名称3=ナショナル > 名称1=松下,名称2=冷蔵,名称3=商品名 > とか、何かしら関係のある名称群が登録されております。 > それを、名称1+名称2をグループとして、それぞれのTOP10を抽出する方 法を模 > 索しております。 > > ----- Original Message ----- > From: "F.Y" <fumi_sby@xxxxxxxxxx> > To: <ml@xxxxxxxxxx> > Sent: Monday, June 05, 2006 4:18 PM > Subject: [mysql 13066] Re: グループ化された情報の TOP > 10を取得する方法 > > > > > 名称1の取り得る値が限られているなら、最近出た順位出すユーザ変数使って み > > るのも一興。 > > 名称3のハイフンの後ろが順位を示すなら、substring(名称3, > instr(名称3, '-') > > + 1) > > で順位が取り出せる。 > > 名称1の取り得る値が不明で、名称3が順位を示さない場合のヒント。 > > select kcode, kseiseki, a1 from ( > > select kcode, kseiseki, if(kcode <> @chk, @r1 := 1, @r1 := (@r1 + > 1)) as > > a1, (@chk := kcode) as a2 from kdata order by kcode, kseiseki > > ) as t0 > > where a1 < 11; > > サブクエリにしないとならんところが美しくない…。 > > げーじつかぼしゅうちう -------------------------------------- Let's start Yahoo! Auction - Free Campaign Now! http://pr.mail.yahoo.co.jp/auction/
@ 13062 2006-06-05 14:49 ["Yoshio Kawano" <kaw] グループ化された情報のTOP10を取得する方法 13063 2006-06-05 14:56 ┗["F.Y" <fumi_sby@xxxx] 13064 2006-06-05 15:48 ┗["Yoshio Kawano" <kaw] 13065 2006-06-05 15:47 ┣[遠藤 俊裕 <endo@xxxx] 13067 2006-06-05 16:48 ┃┗["Yoshio Kawano" <kaw] 13066 2006-06-05 16:18 ┗["F.Y" <fumi_sby@xxxx] 13068 2006-06-05 17:07 ┗["Yoshio Kawano" <kaw] -> 13069 2006-06-05 17:26 ┗["F.Y" <fumi_sby@xxxx] 13075 2006-06-06 02:05 ┗["Yoshio Kawano" <kaw]