|
akiさんへ
>JRDBシステム班さんへ
>
>随分返信が遅くなってしまいましたが、試してみて出来なかったので
>アドバイス頂けないでしょうか。私が実行したSQL文を下記に記します。
>
>EXISTS(SELECT NULL FROM [前後3Fテーブル] AS T1 WHERE T1.[レースキー]=[D競走馬データ].[競走成績キー])
>
>私のSQLの知識ですと前後3FテーブルのレースキーとD競走馬データテーブルの競走成績キーが一致したデータ
>を抽出すると思っているのですが認識として間違いないでしょうか?
競走成績キーは、
血統登録番号+年月日
です。レースキーとは違います。
[前後3Fテーブル]を作成するときに、競走成績キーを取ってきてください。成績データか競走馬データにあります。
>ちなみにこのSQL文を実行すると、対象データは一件もありません。
>条件を変えて再度行ってくださいとエラーが出ます。例えばですが、
>前後3Fテーブルに存在するIDMが60以上のレコードを表示したいような
>場合はどのように記述すればよろしいのでしょうか?
>
>>akiさんへ
>>>JRDBシステム班さんへ
>>> Accessで分析して抽出した結果のテーブル内のデータを
>>> GGAでは出力できるのかがやりたいことになります。
>>>
>>> 下記の成功例で実行するとエラーは出ず結果は出力されます。
>>> しかし、前後3Fテーブルには開催日が2010年の12/26日分のデータしか存在しないにもかかわらず、
>>> 開催日が2002年のデータがなぜか抽出されてしまう状態です。
>>> この原因として推測がつく範囲で構わないのでアドバイスを頂けないでしょうか?
>>
>>拡張部分は通常のSQL文のWhere句の一部になります。下記参照
>>
>>SELECT
>> ***項目名********
>>FROM
>> ***テーブル名****
>>WHERE
>> ***条件1****
>> AND
>> ***条件2****
>> AND
>> ***ここが拡張部分***
>>;
>>
>>上の方のSQL文では、全レコードが対象になっており、
>>「SELECT COUNT(*)+1 FROM [前後3Fテーブル]」を拡張に書くと
>>全レコードが出てくると思います。
>>
>>もし、前後3Fテーブルのレコードと対応させたりするならば
>>in や exists を使えば絞り込めます。
>>
>>*********************************************
>> EXISTS(
>> SELECT null FROM 前後3Fテーブル T1
>> WHERE
>> T1.競走成績キー = D競走馬データ.競走成績キー
>> )
>>*********************************************
>>といった感じです。
>>
>>※前後3Fテーブルには、「競走成績キー」のようなものが必要です。
>>
>>一度、やってみてみください。
>>
>>
>>>
>>> またもう1点違う質問をさせてください。
>>> GoldGeneratorの表示項目の設定でアドイン機能を利用して自分で作成したテーブル(テン指数+上がり指数の合計順位)の
>>> 項目を表示しようとしているのですがうまくいきません。調査してみたところ、jrdb_this.mdb内のSアドイン項目管理
>>> テーブルに自分で作成したテーブルデータを追加したはずなのですが、GolodGeneratorを起動すると上書きされているのか
>>> 元々存在する6つのデータしか表示されておりません。新規に作成したテーブルの情報を追記するのはjrdb_this.mdb内の
>>> Sアドイン項目管理テーブルだけという認識なのですが、その他にも設定しなければならないテーブル等あるのでしょうか?
>>>
>>
>>できるかどかは、不明です。一度、調べてみますので、少し時間をいただけますでしょうか。
>>
>>
>>>>akiさんへ
>>>>>
>>>>>試してみた例を下記に記します。
>>>>>※前後3Fテーブル:新規に作成したテーブル
>>>>>
>>>>> 失敗例:SELECT * FROM [前後3Fテーブル]
>>>>> 成功例:SELECT COUNT(*)+1 FROM [前後3Fテーブル]
>>>>> (※出力はされるが違うテーブルを使っているように見えました(テーブルにないデータ
>>>>> の年度も出力されていたため))
>>>>>
>>>>> エラー結果:エラーコード[3306]
>>>>> 「メイン クエリのFROM句の予約後 EXISTSを使用しないフィールドを複数
>>>>> 返すサブクエリを作成しました。サブクエリのSELECTステートメントを変更し、
>>>>> 1つのフィールドだけを指定してください。
>>>>>
>>>>成功例があるので、リンクはできており、データを引っ張ってきていると思います。
>>>>問題はSQL文にありますね。
>>>>
>>>>GGAの拡張機能は、通常SQL文の where 部分に当たります。ここに select を入れると
>>>>サブクエリーと呼ばれているものになります。エラーのとおり「一つのフィールドを返す」文
>>>>しか指定できないと思います。
>>>>失敗例は*指定なので、複数フィールドとなっています。
>>>>成功例は1つしか返ってこないので、動いている(文法的にOK)と思います。
>>>>
>>>>ただ、akiさんのやりたいことにはなっていないと思います。
>>>>詳しく教えていただければ、アドバイスできるかもしれません。
|
|