質問: access テーブルを見比べて、一致しないレコードを追加したいです accessで、以下のようにデータを追加をしたいです。 別々のテーブルで、データの一致しないものだけ追加したいです。 どのようにすればよいのでしょうか? aテーブル、bテーブル共に入力項目は全て同じです。 よろしくお願いします。 aテーブル bテーブル 名前 個人データ 名前 個人データ ・鈴木 *** ・近藤 *** ・近藤 *** ・伊藤 *** ・渡辺 *** ・鈴木 *** 求める答え ・鈴木 *** ・近藤 *** ・渡辺 *** ・伊藤 *** たぶん、不一致クエリでbテーブルの伊藤さんだけ取り出して、aテーブルに追加するという方法がやりやすいのでしょうか? よろしくお願いします。
回答: >不一致クエリでbテーブルの伊藤さんだけ取り出して、 >aテーブルに追加するという方法がやりやすいのでしょうか? 考え方としてはこの方法でいいのですが この方法でやるとたぶん名前が重複しているというエラーになります 上のようにして作ったクエリをsqlビューで表示したのが下です insert into aテーブル ( 名前, 個人データ, 名前 ) select bテーブル.名前, bテーブル.個人データ, aテーブル.名前 from bテーブル left join aテーブル on bテーブル.名前 = aテーブル.名前 where (((aテーブル.名前) is null)); 確かに抽出条件として使った名前まで記入されています これがエラーの原因ですからこれを削除してやります insert into aテーブル ( 名前, 個人データ ) select bテーブル.名前, bテーブル.個人データ from bテーブル left join aテーブル on bテーブル.名前 = aテーブル.名前 where (((aテーブル.名前) is null));