|
|
マック
- 04/11/22(月) 19:07 -
|
|
|
| |
昔あった重賞初挑戦のSQL文を使って色々やっているのですが、
4戦目から6戦目みたいなやり方が分からなくて困っております。
どなたかお分かりの方が降りましたら、教えてください。
よろしくお願いします。
|
|
|
<Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90)@p6292d4.tkyoac00.ap.so-net.ne.jp>
|
|
|
奥野@JRDB
- 04/11/23(火) 1:46 -
|
|
|
| |
マックさんへ
> 昔あった重賞初挑戦のSQL文を使って色々やっているのですが、
> 4戦目から6戦目みたいなやり方が分からなくて困っております。
SQLは私も少し勉強中です。開発に必要になってきておりまして、、、(ちょっと辛いです
重賞初挑戦の分析とはどのようなものでしょうか?
なかなかおもしろそうですねー。。
4戦目から6戦目というのはちょっと意味がわかりませんので、
もしよろしければ、もう少し具体的にお書きいただければなとおもいます。
よろしくお願いします。
|
|
|
<Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NE...@YahooBB220042088101.bbtec.net>
|
|
|
マック
- 04/11/23(火) 14:08 -
|
|
|
| |
奥野@JRDBさんへ
>SQLは私も少し勉強中です。開発に必要になってきておりまして、、、(ちょっと辛いです
僕の方は勉強するほどのことはしてないです。ただ最後の数字をいじったり程度の事ですので・・・。
本格的にやるとなると大変そうですね。
>重賞初挑戦の分析とはどのようなものでしょうか?
>なかなかおもしろそうですねー。
セイズプロジェクトの過去ログにあったSQL文の
(SELECT COUNT(*) FROM D番組データ AS D_B INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号) AND (D_B.年月日<D番組データ.年月日) AND (D_B.グレード = '1' OR D_B.グレード = '2' OR D_B.グレード = '3') ) = 0
を使って最後の数字をいじっているんです。
(あとこれに通常分析のグレードのところのG1G2G3をチェック)
>4戦目から6戦目というのはちょっと意味がわかりませんので、
>もしよろしければ、もう少し具体的にお書きいただければなとおもいます。
ただたんに4戦目と5戦目と6戦目を一緒にしたいってだけです。
自分で作った括りではないので『意味』は特に分かりません。
競馬王に載っている今井雅宏さんのウマゲノムとかGRとかをGGAで分析して
自分で種牡馬ごとにまとめているでその中で出てきたものです。
その中で重賞挑戦1、2、3、4〜6、7戦以上に分かれていると言う事なんです。
それで最後の数字をいじくって他のはできたんですが、 4〜6戦目だけちょっと分からなかったんです。
たぶん最後のイコールのところを3以上と5以下みたいにすればできるんだとは思うんですけど・・・。
私にはそれをどうやるのかが分かりません。
それではもしできたらでよいのでよろしくお願いします。
|
|
|
<Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90)@p624e81.tkyoac00.ap.so-net.ne.jp>
|
|
|
奥野@JRDB
- 04/11/23(火) 21:22 -
|
|
|
| |
マックさんへ
>奥野@JRDBさんへ
> セイズプロジェクトの過去ログにあったSQL文の
>
> (SELECT COUNT(*) FROM D番組データ AS D_B INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号) AND (D_B.年月日<D番組データ.年月日) AND (D_B.グレード = '1' OR D_B.グレード = '2' OR D_B.グレード = '3') ) = 0
>
> を使って最後の数字をいじっているんです。
そうですね。これでいけるみたいです。。
競走馬の過去の重賞出走回数をカウントしているんですね。
よって
(SELECT COUNT(*) FROM D番組データ AS D_B
INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー
WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号)
AND (D_B.年月日<D番組データ.年月日)
AND (D_B.グレード = '1' OR D_B.グレード = '2' OR D_B.グレード = '3') ) >=4
AND
(SELECT COUNT(*) FROM D番組データ AS D_B
INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー
WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号)
AND (D_B.年月日<D番組データ.年月日)
AND (D_B.グレード = '1' OR D_B.グレード = '2' OR D_B.グレード = '3') ) <=6
もっといい書き方はあるのかもしれませんが、このように設定すればいける気がします(曖昧ですいません、、、)。
グレード(今走) = G1,G2,G3
---------------------------------------------------------------------------------
父馬名 件数 1着 2着 3着 着外 勝率 連対率 複勝率 単回収率 複回収率
---------------------------------------------------------------------------------
サンデー 296 28 30 26 212 9.5% 19.6% 28.4% 40.7% 68.0%
サンデーサイレンスはこんか感じの結果になりました。
それでは。。
|
|
|
<Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)@ntoska031009.oska.nt.ftth2.ppp.infoweb.ne.jp>
|
|
|
マック
- 04/11/23(火) 23:03 -
|
|
|
| |
奥野@JRDBさん
二つほど報告です。
>(SELECT COUNT(*) FROM D番組データ AS D_B
> INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー
> WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号)
> AND (D_B.年月日<D番組データ.年月日)
> AND (D_B.グレード = '1' OR D_B.グレード = '2' OR D_B.グレード = '3') ) >=4
> AND
>(SELECT COUNT(*) FROM D番組データ AS D_B
> INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー
> WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号)
> AND (D_B.年月日<D番組データ.年月日)
> AND (D_B.グレード = '1' OR D_B.グレード = '2' OR D_B.グレード = '3') ) <=6
>
先ずはこの上SQL文なのですが、ちょっと間違ってました。
4〜6戦目なのですが数字のところは3と5になるのが正解みたいです。
>グレード(今走) = G1,G2,G3
>---------------------------------------------------------------------------------
>父馬名 件数 1着 2着 3着 着外 勝率 連対率 複勝率 単回収率 複回収率
>---------------------------------------------------------------------------------
>サンデー 296 28 30 26 212 9.5% 19.6% 28.4% 40.7% 68.0%
>
次は僕がサンデーで調べたら下のようになりました。
---------------------------------------------------------------------------------
父馬名 件数 1着 2着 3着 着外 勝率 連対率 複勝率 単回収率 複回収率
---------------------------------------------------------------------------------
サンデー 257 24 27 25 181 9.3 19.8 29.6 38.9 72.6
一応99年から全部データは入っているはずなんですけど・・・。
あと、さっき調べていて分かったんですけどこのままやると97年より前に生まれた馬は
データが途中からしか入っていないのでちょっとずれが出てくるんですね。
だから97年生まれ以降に設定した方がよさそうです。
それでは。
|
|
|
<Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90)@p624ee9.tkyoac00.ap.so-net.ne.jp>
|
|
|
奥野@JRDB
- 04/11/24(水) 10:14 -
|
|
|
| |
マックさんへ
>奥野@JRDBさん
>
> 二つほど報告です。
> 先ずはこの上SQL文なのですが、ちょっと間違ってました。
> 4〜6戦目なのですが数字のところは3と5になるのが正解みたいです。
すいません。0のときが(初挑戦=1)ですから、そうですね。間違っておりました。
> 次は僕がサンデーで調べたら下のようになりました。
>
>---------------------------------------------------------------------------------
>父馬名 件数 1着 2着 3着 着外 勝率 連対率 複勝率 単回収率 複回収率
>---------------------------------------------------------------------------------
>サンデー 257 24 27 25 181 9.3 19.8 29.6 38.9 72.6
>
> 一応99年から全部データは入っているはずなんですけど・・・。
これまた失礼しました。
私のDBマンへ登録してあるデータは10月11日まででした、、、
> あと、さっき調べていて分かったんですけどこのままやると97年より前に生まれた馬は
> データが途中からしか入っていないのでちょっとずれが出てくるんですね。
> だから97年生まれ以降に設定した方がよさそうです。
なるほど。。
細かい部分までご示唆いただきありがとうございます。
それでは。。
|
|
|
<Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)@ntoska031009.oska.nt.ftth2.ppp.infoweb.ne.jp>
|
|
 |
 |