• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MicrosoftAccess2000の選択クエリについて教えて下さい)

MicrosoftAccess2000の選択クエリについて教えてください

このQ&Aのポイント
  • Access2000を使用してデータベースを作成している際に、クエリの結果が変化する現象が起きることがあります。
  • 具体的には、特定のクエリ(選択クエリ)の結果が正しくなく、レコード数が増えてしまうことがあります。
  • この現象は稀に発生し、データベース構造を再度インポートすることで解消されることがあります。

質問者が選んだベストアンサー

  • ベストアンサー
  • shinkami
  • ベストアンサー率43% (179/411)
回答No.3

起算日はデータを絞り込むためのものですね このような場合 フォームの対象となる時もそうですが、クエリーが開く前に確定していなければ なりません。 即ち起算日を入力するテキストボックスのあるフォームが開いていて初めて有効になります。 自分は[メニュー]という名のフォームに[起算日]と名付けたテキストボックスを配置してこのフォーム から目的のフォームを開いています。 メニューフォームの起算日を変更したイベントにより目的のフォームを開きます。 目的のフォームの絞り込み条件に FORMS!メニュー!起算日 とします。

noname#111027
質問者

お礼

ありがとうございました。

その他の回答 (2)

  • shinkami
  • ベストアンサー率43% (179/411)
回答No.2

一つのクエリの対象となるテーブルはリレーションシップが確立されているものだけです。 リレーションシップが確立されているテーブルは、クエリウィンドウ内で線で結ばれています。 孤立しているテーブルは右クリックから削除して下さい。 削除して不都合がある時はどのような不都合か具体的に仰ってください リレーションシップは通常1対Nの関係になっています。 例えば部門テーブルと従業員テーブルはリレーションシップで関係付けますが この場合のクエリーは、各部門内の従業員数だけ部門が重複表示されるのはご理解いただけますか

noname#111027
質問者

お礼

早速のご回答ありがとうございました。 私の見る限りではリレーションシップには問題なさそうなのですが、見落としがあるのかもしれません。再度確認してみます。 ただ、もしリレーションシップに問題があるということならば、クエリの結果は毎回正しく出ないように思うのですが、どうなのでしょうか? 当方のデータベースの場合、クエリ構造は矛盾がなさそうに見えており、ほとんどの場合で意図した結果がえられております。ただし、ごく稀な割合で結果が狂うので、なぜなのか知りたいと考えております。 質問文が分かりにくかった面があるようで、申し訳ありません。 ただ今問題としているクエリ内には孤立しているテーブルは1つ存在しますが、そのテーブルは削除すると求めている結果が出ませんので削除することが出来ません。 またこの孤立しているテーブルは、他のクエリでも(本データベース内に100個程度あります)孤立で使用していますが、今のところクエリ計算結果に問題はありません。 その孤立しているテーブルを具体的に示しますと、 孤立しているテーブル(テーブル名は「開始日」と名づけています。)は、データ抽出の起算日だけが入っています。レコード数は1です。 「開始日」テーブルの日付は、本データベース内の全てのクエリの起算日としています。 「開始日」テーブルの日付を変更することで、一定のタームごとの計算結果を得ることができます。 「開始日」テーブルの日付を基に別の締切日を計算し、その結果をクエリやフォームやレポートで表示させたりしたいため、パラメータは使用せず、1つのテーブルとしていました。こうすることで、パラメータのように毎度条件を尋ねられたりせずに使用出来ていました。 文章力がないため、分かりにくくて申し訳ないです。 またご教示ください。よろしくお願いします。

  • shinkami
  • ベストアンサー率43% (179/411)
回答No.1

参照等のために別のテーブルがAテーブル以外に設定されていませんか 別のテーブルのレコードの数だけ表示が重複します。

noname#111027
質問者

お礼

早速の回答ありがとうございます。 ご指摘の通り、このBクエリにはAテーブル以外にも多数のテーブル(テーブル数は、Aテーブルを含め、11あります)を使用しています。 (事例では、具体的になりすぎかと思い省いておりました。) 別のテーブルのレコードの数だけ表示が重複する、そして 現実には2倍または4倍に表示が重複したということは 使用している11のテーブルのうち、レコード数が2または4のテーブルが原因で重複しているのでしょうか。レコード数が2または4のテーブルは、4あります。 重複しないようにするには、どうすればよいのでしょうか?