「Web出版サイト」ベータ公開

Q&A集[?]

当サイトでのご質問の受付は終了しました

すべてのコンテンツを読み込み専用としたため、回答欄からも投稿できません

Apache OpenOffice/LibreOfficeのご質問はそれぞれのフォーラムへご投稿ください

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:2
昨日:0
総数:1397
現在:4


過去の礼状記録から、特定のデータを取り出したい

メッセージ

よろしくお願いします。超初心者です。
過去に礼状を3つ出したとして、それを誰に送り、誰に送っていないかなどを調べるため
以下のような3つのテーブルを作りました。


Aテーブル
得意先ID(主キー)・・氏名・・・・・・・・・礼状ID・・・・礼状チェックID
(長整数型)・・・・・(VARCHAR型)・・(整数型)・・(VARCHAR型)
1・・・・・・・・・・・・・・山田・・・・・・・・・・・・1・・・・・・・・未記入
2・・・・・・・・・・・・・・田中・・・・・・・・・・・・2・・・・・・・・未記入
3・・・・・・・・・・・・・・鈴木・・・・・・・・・・・・3・・・・・・・・未記入

Bテーブル
礼状ID(主)・・得意先ID・・・REI1・・・・・・・・REI2・・・・・・・・・・・REI3
(整数型)・・(長整数型)・・(はい/いいえ)・・(はい/いいえ)・・(はい/いいえ)
1・・・・・・・・・・・・1・・・・・・・・はい・・・・・・・・・はい・・・・・・・・・いいえ
2・・・・・・・・・・・・2・・・・・・・・はい・・・・・・・・・はい・・・・・・・・・はい
3・・・・・・・・・・・・3・・・・・・・・はい・・・・・・・・・はい・・・・・・・・・はい

Cテーブル
礼状チェックID(主)・・・・郵送日・・・・・・・・・・・・・・・内容
(VARCHAR型)・・・・・・(日付(DATE)型)・・・(メモ(LONGVARCHAR)型)
REI1・・・・・・・・・・・・・・2006/1/1・・・・・・・・・・・・・新年のご挨拶
REI2・・・・・・・・・・・・・・2006/4/1・・・・・・・・・・・・・春のご挨拶
REI3・・・・・・・・・・・・・・2006/8/1・・・・・・・・・・・・・暑中見舞い

AテーブルとBテーブルを「礼状ID」でつないで、
Aテーブルから「氏名」、「礼状ID」、Bテーブルから「REI1」「REI2」「REI3」を取り出し
クエリを作りました。すると、
クエリ1
氏名・・・・・礼状ID・・・・REI1・・・・・REI2・・・・・REI3
山田・・・・・・・1・・・・・・・はい・・・・・はい・・・・・いいえ
山田・・・・・・・1・・・・・・・はい・・・・・はい・・・・・はい(「いいえ」ではなく「はい」でした。訂正します)
山田・・・・・・・1・・・・・・・はい・・・・・はい・・・・・はい(「いいえ」ではなく「はい」でした。訂正します)

と、同じものが3行出てきてしまいました。
また、「山田さんに送ったREI2はどんな内容だったかな」を調べようと、
Aテーブルの「礼状チェックID」とCテーブルの「礼状チェックID」を
リレーションでつなごうとしても結合線が表示されません。
あれ、と思ってもう一度すると、以下のエラーが表示されます。
「Constraint already exists・・・」
無視してOKを押して、保存してから、
Aテーブルから「氏名」「礼状チェックID」を取り出し、
Cテーブルから「内容」を取り出し、クエリを作ると、

クエリ2
氏名・・・・・・・礼状チェックID・・・・・・・内容
山田・・・・・・・・・・空白・・・・・・・・・・新年のご挨拶
山田・・・・・・・・・・空白・・・・・・・・・・春のご挨拶
山田・・・・・・・・・・空白・・・・・・・・・・暑中見舞い

と、また同じものがズラズラとでてきてしまいます。
何か、堂々巡りしているような気がするのですが、どうしたらいいのか全くわかりません。
基本的にやりたいことは、「ある得意先に、どの礼状が届いていて、
どの礼状が届いていないか、それはいつの日付の分で、どんな内容のものか」を
得意先IDを入れたら、すぐに引っ張り出せるようにしたいのです。

何卒(わかりやすく)ご指導のほど、お願いいたします。


お名前:
題名:


添付ファイル: filefaq3_309_01.png 620件 [詳細] filefaq3_309_01.odb 1675件 [詳細] filesample修正.odb 777件 [詳細] filesample.odb 886件 [詳細]