|
せがpさんへ
> 匿名さんへ
>>下記の条件を満たした馬をGGで抽出したいのですが、SQL文の知識がないため困っています。アドバイスをお願いします。
>>
>>■福島・ダート1000メートル
>>■未勝利
>>■近5走のうち、2走以上で下記の条件に該当する馬
>>
>>1)小倉ダ1000、福島ダ1150、中山ダ1200、新潟ダ1200で前半3Fが34.9秒(34.4)以内で走ったことがある
>>2)札幌、函館、福島、中京のダ1000、阪神ダ1200、京都、阪神のダ1400、東京ダ1600で前半3Fが35.4(34.9)秒以内で走ったことがある
>>3)京都ダ1200、東京ダ1300、東京ダ1400、全場のダ1700以上で前半3Fが35.9秒(35.4)以内で走ったことがある
>> ※条件はいずれも「良」。「重〜不良は」()の数字
>>4)芝のレースで、距離を問わず前半3Fが33.4秒以内(重〜不良33.9)で走ったことがある
>>
>>難解かもしれませんが、何とぞよろしくお願いします。
>
>過去分析できますが、データの整合性はチェックしておりません。
>「本日のお気に入り」に表示されるかテストしてません。
>分析を行ったPCの過去分データは2003/1/5〜投稿日までしか登録しておりませんので、
>お使いの環境により分析結果に違いが出る場合があります。
>>■近5走のうち、2走以上で下記の条件に該当する馬
>これに対応しているか疑問です。下記の拡張だと対象馬の過去走すべてを対象としているような気がします。
>
>以上の点、あらかじめご了承ください。
>
>
>お気に入り名称:福島ダ1000未勝利
>作者名:せがp
>[条件]
>開催場所(今走) = 福島
>芝ダ障害コード(今走) = ダ
>距離(今走) = 1000〜1000
>条件(今走) = 未勝利
>【拡張】() = (SELECT COUNT(*) FROM ( (D番組データ AS D_B INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー) INNER JOIN D直前情報データ AS D_T ON D_K.競走成績キー = D_T.競走成績キー) INNER JOIN D成績データ AS D_S ON D_T.競走成績キー = D_S.競走成績キー WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号) AND (D_B.年月日<D番組データ.年月日) AND (D番組データ.芝ダ障害コード = '2') and ( ((((left(D番組データ.レースキー,2) = '10') and D番組データ.距離 = '1000' ) or ((left(D番組データ.レースキー,2) = '03') and D番組データ.距離 = '1150' ) or (((left(D番組データ.レースキー,2) = '06') or (left(D番組データ.レースキー,2) = '04')) and D番組データ.距離 = '1200' )) and (D成績データ.前3F <=349 or ((D直前情報データ.馬場状態 = '20' OR D直前情報データ.馬場状態 = '30' OR D直前情報データ.馬場状態 = '40') and D成績データ.前3F <=344))) or ((((left(D番組データ.レースキー,2) = '01' OR left(D番組データ.レースキー,2) = '02' OR left(D番組データ.レースキー,2) = '03' OR left(D番組データ.レースキー,2) = '07') and D番組データ.距離 = '1000' ) or ((left(D番組データ.レースキー,2) = '09') and D番組データ.距離 = '1200') or ((left(D番組データ.レースキー,2) = '08' OR left(D番組データ.レースキー,2) = '09') and D番組データ.距離 = '1400' ) or (left(D番組データ.レースキー,2) = '05' and D番組データ.距離 = '1600' )) and (D成績データ.前3F <=354 or ((D直前情報データ.馬場状態 = '20' OR D直前情報データ.馬場状態 = '30' OR D直前情報データ.馬場状態 = '40') and D成績データ.前3F <=349))) or ((((left(D番組データ.レースキー,2) = '08') and D番組データ.距離 = '1200') or ((left(D番組データ.レースキー,2) = '05') and (D番組データ.距離 >= '1300' or D番組データ.距離 <= '1400')) or (D番組データ.距離 >= '1700')) and (D成績データ.前3F <=359 or ((D直前情報データ.馬場状態 = '20' OR D直前情報データ.馬場状態 = '30' OR D直前情報データ.馬場状態 = '40') and D成績データ.前3F <=354))) or ((D番組データ.芝ダ障害コード = '1') and (D成績データ.前3F <=334 or ((D直前情報データ.馬場状態 = '20' OR D直前情報データ.馬場状態 = '30' OR D直前情報データ.馬場状態 = '40') and D成績データ.前3F <=339))) ) GROUP BY D_K.血統登録番号) >1
>-------------------------------------------------------------------------------------------
>件数 1着 2着 3着 着外 勝率 連対率 複勝率 単回収率 複回収率 単平均 単最高 複平均 複最高
>-------------------------------------------------------------------------------------------
>114 25 25 20 44 21.9% 43.9% 61.4% 96.0% 109.3% 438 2380 178 780
>
>以前に近5走に対応しようとお気に入りを作ったような記憶があるのですが、みあたらないんです。
>どうやったかもうろおぼえです。競走馬データの前走1競走成績キー〜前走5競走成績キーでJOINしたような、、、
>作ろうと思って挫折したような、、、
>もうちょっとみてみます。
間違ってました。
近5走ではなく過去走全件対象です。
お気に入り名称:福島ダ1000未勝利
作者名:せがp
[条件]
開催場所(今走) = 福島
芝ダ障害コード(今走) = ダ
距離(今走) = 1000〜1000
条件(今走) = 未勝利
【拡張】() = (SELECT COUNT(*) FROM ( (D番組データ AS D_B INNER JOIN D競走馬データ AS D_K ON D_B.レースキー = D_K.レースキー) INNER JOIN D直前情報データ AS D_T ON D_K.競走成績キー = D_T.競走成績キー) INNER JOIN D成績データ AS D_S ON D_T.競走成績キー = D_S.競走成績キー WHERE (D_K.血統登録番号=D競走馬データ.血統登録番号) AND (D_B.年月日<D番組データ.年月日) AND (D_B.芝ダ障害コード = '2') and ( ((((left(D_B.レースキー,2) = '10') and D_B.距離 = '1000' ) or ((left(D_B.レースキー,2) = '03') and D_B.距離 = '1150' ) or (((left(D_B.レースキー,2) = '06') or (left(D_B.レースキー,2) = '04')) and D_B.距離 = '1200' )) and (D_S.前3F <=349 or ((D_T.馬場状態 = '20' OR D_T.馬場状態 = '30' OR D_T.馬場状態 = '40') and D_S.前3F <=344))) or ((((left(D_B.レースキー,2) = '01' OR left(D_B.レースキー,2) = '02' OR left(D_B.レースキー,2) = '03' OR left(D_B.レースキー,2) = '07') and D_B.距離 = '1000' ) or ((left(D_B.レースキー,2) = '09') and D_B.距離 = '1200') or ((left(D_B.レースキー,2) = '08' OR left(D_B.レースキー,2) = '09') and D_B.距離 = '1400' ) or (left(D_B.レースキー,2) = '05' and D_B.距離 = '1600' )) and (D_S.前3F <=354 or ((D_T.馬場状態 = '20' OR D_T.馬場状態 = '30' OR D_T.馬場状態 = '40') and D_S.前3F <=349))) or ((((left(D_B.レースキー,2) = '08') and D_B.距離 = '1200') or ((left(D_B.レースキー,2) = '05') and (D_B.距離 >= '1300' or D_B.距離 <= '1400')) or (D_B.距離 >= '1700')) and (D_S.前3F <=359 or ((D_T.馬場状態 = '20' OR D_T.馬場状態 = '30' OR D_T.馬場状態 = '40') and D_S.前3F <=354))) or ((D_B.芝ダ障害コード = '1') and (D_S.前3F <=334 or ((D_T.馬場状態 = '20' OR D_T.馬場状態 = '30' OR D_T.馬場状態 = '40') and D_S.前3F <=339))) ) GROUP BY D_K.血統登録番号) >1
-------------------------------------------------------------------------------------------
件数 1着 2着 3着 着外 勝率 連対率 複勝率 単回収率 複回収率 単平均 単最高 複平均 複最高
-------------------------------------------------------------------------------------------
69 13 14 13 29 18.8% 39.1% 58.0% 92.2% 122.0% 489 1380 211 1160
|
|