- 締切済み
アクセスのクエリ作成
アクセスについてです。訪問先テーブルに「社名、住所、電話番号」等が入力されてあります。訪問分担テーブルに「訪問者、訪問先1、訪問先2、訪問先3」等のデータが入力されています。訪問分担テーブルの「訪問先1、訪問先2」等は訪問先テーブルの「社名」とリンクしてあります(ルックアップ列です)。クエリを作成する際に、「訪問者、訪問先1」につづけて、「訪問先1」の住所を表示させるためにはどうしたらよいのでしょうか。同様に「訪問先2」、「訪問先3」というクエリも別に作成したいのですが、どうしたらよいのでしょうか。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- prius770c
- ベストアンサー率35% (91/258)
回答No.1
デザインビューをイメージして書きます。 訪問分担テーブル 訪問先テーブル×3(テーブルを3回追加してください。) 訪問先1と訪問先テーブル(1つめ)の社名を結合させる。 同様に訪問先2と訪問先テーブル(2つめ)の社名を結合させる。 さらに、訪問先2と訪問先テーブル(3つめ)の社名を結合させる。 訪問先1の住所は訪問先テーブル(1つめ)の住所を選ぶ。 訪問先2の住所は訪問先テーブル(2つめ)の住所を選ぶ。 訪問先3の住所は訪問先テーブル(3つめ)の住所を選ぶ。 実データがないので何とも言えませんが、結合は外部結合の方が良さそうな気がしますね。 あと何に使うのかわからないので一概には言えませんが、なぜ同じような訪問先というデータを わざわざ別のフィールドで管理されているでしょうか? 一つのフィールドで良さそうな気がするのですが・・・。 出来れば、社名で結合するのではなくて社名にIDを振ってデータ管理した方がいいと思いますよ。 テキストデータばっかりだとデータ重たくありませんか? 質問とは直接関係ありませんが少し気になったので。
お礼
ありがとうございました。 アクセスを使い始めたときに作成したものなので、初期の設計が不十分のように思います。 記入していただいたものをヒントに作成できました。 書き忘れていましたが、一応、社名にIDはふってあります。結合も番号によるものだと思います。 ルックアップ列作成で結合したので、無自覚なのですが…。 フィールドは、訪問時期で分けています。どの時期にどこへ訪問したかを把握するために別にしてあります。 いずれにしても、全体のデザインを考えなければならないときかなと思っています。 ありがとうございました。