- ベストアンサー
accessで2つのテーブルの比較
shaku_の回答
- shaku_
- ベストアンサー率0% (0/1)
2 つのテーブルを比較し、一致するものがないレコードを検索する http://office.microsoft.com/ja-jp/access/HA102051321041.aspx が参考になるかも
関連するQ&A
- 2つのテーブルのレコードを比較し、片方にないものを削除したい。
初診者です。簡単なことかもしれませんがご回答お願い致します。 Access2000を使用しています。 前年度のデータと今年度のデータを比較して、 今年度にないものを抽出したいと考えています。 レコードのフィールドは、端末名(一意)、設置場所です。 結合プロパティを使用して、結合条件を端末名にし、さらに 端末名(前年度)抽出条件を "is Null" にすることで抽出 を試みましたが、 設置場所が前年度から今年度に変更した時には抽出可能(*1) なのですが、端末自体のレコードが今年度に追加されたときは 抽出されません(*2)。 今年度に追加されたときについても抽出できる方法を教えて下さい。 *1の場合(○抽出可) ○昨年度テーブル ○今年度テーブル 端末名 | 設置場所 端末名 | 設置場所 AAA 風呂 AAA 台所 *2の場合(×抽出不可)← 抽出したい ○昨年度テーブル ○今年度テーブル 端末名 | 設置場所 端末名 | 設置場所 レコード無し BBB 便所
- ベストアンサー
- その他(データベース)
- MS accessで2つのテーブルを比較したい
数々この質問は出ているのですが、『不一致クエリウィザード』でやっても上手くいかないので、こちらで質問させていただくことにしました。 比較したいデータは、フィールドの名前が異なる2つのテーブルがあって、その比較したいフィールド数は120になります。 同一フィールドは「FID」「laa」というフィールドです。 一応自分で『不一致クエリウィザード』でやってみた手順としては以下の通りになります。 1.『不一致クエリウィザード』をクリック 2.どちらかのテーブルを選択(レコード抽出テーブルや比較するテーブルなど) 3.関連付けフィールドは、2つのテーブルで同じものを選択 (「FID」「laa」を選択) 4.結果を表示するフィールドを選択(120個全部) 5.「クエリのデザインを編集する」の方にチェックを入れて「完了」 6.クエリのデザインになったら、それぞれの名前は違うけど対応するフィールド同士をつなぐ 7.結合プロパティで2番ないし3番を選択 8.それを全部のフィールドにした ↓ すると「クエリが複雑すぎます」とエラーメッセージが出てしまった。 一体どうすればよいのでしょうか? なにぶん初心者ですので、よろしくお願いします。 ※もしかして、フィールド名が異なっているのはダメなのでしょうか?
- ベストアンサー
- その他MS Office製品
- ACCESSで複数テーブルのクエリ抽出
ACCESSで複数テーブルのクエリ抽出 初めて投稿させてもらいます。 テーブル1・・・社員ID(主キー)、氏名 テーブル2・・・社員ID(重複キー有)、顧客ID テーブル3・・・社員ID(重複キー有)、得意先ID テーブル4・・・顧客ID、顧客氏名 テーブル5・・・得意先ID、得意先 上記のテーブル内容を1つのクエリで全部抽出するとき、 テーブル1の社員ID[a]とテーブル2の社員ID[a] と テーブル1の社員ID[a]とテーブル3の社員ID[a] を分けて抽出する方法ってありますか? クエリの結合プロパティで テーブル2の全レコードとテーブル1の同じ結合フィールドと テーブル3の全レコードとテーブル1の同じ結合フィールドにすると 「あいまいな外部接続が含まれているのでSQLを実行出来ません」とエラーになり、 テーブル1の全レコードとテーブル2の同じ結合フィールドと テーブル1の全レコードとテーブル3の同じ結合フィールドにすると 社員ID[a]、顧客ID[1]、得意先ID[α]、顧客氏名[吉田]、得意先[○○商事] 社員ID[a]、顧客ID[1]、得意先ID[β]、顧客氏名[吉田]、得意先[△△金融] みたいになってしまうのです。 やりたい結果は 社員ID[a]、顧客ID[1]、得意先ID["空欄"]、顧客氏名[吉田]、得意先["空欄"] 社員ID[a]、顧客ID["空欄"]、得意先ID[β]、顧客氏名["空欄"]、得意先[△△金融] 説明下手ですいませんが、ご教授の程よろしくお願いします。
- 締切済み
- その他(データベース)
- アクセスのテーブルの差分の抽出について
アクセスの初心者です。今、仕事でデーターの差分の抽出の仕方についてわからず困っています。 2つのテーブルがあります。 テーブルには100以上の項目と500件ほどのレコードがそれぞれ入っています。 この2つのテーブルを比較して差分を出したいのですが方法が思いつきません。 出したいものは、テーブル1とテーブル2の共通のIDを比較し、 テーブル1からテーブル2で変更、追加されたものを出したいのです。 レコードの追加だけなら差分クエリを利用してやれると思うのですが、 100以上の全フィールドをそれぞれ比較するとなるとどうすれば良いのかわからないのです。 2つのテーブルの項目は基本一緒ですが、追加されたり、変更されたりします。 もともとはエクセルのデータで毎週やりとりされるもので、 エクセル上で手作業で、 シート1とシート2でマッチングを行い、シート3に追加、変更されたものを書き出しています。 100列ほどの項目も追加や変更されるので、前回データと今回データで (1)列の比較をして2つの列数を揃えてから、 (2)KEYになる列でVLOOKUP関数を使い、追加されたデータをよけて、 (3)前回データと今回データが一緒のデーター並べ替え、揃えて、シートを比較して変更、追加を探す という作業を行っています。 データー数が多く、エクセルでは限界がでてきました。 また、アクセスを使えば簡単にできる。と言われましたが、 まだまだ初心者のため、この大量のデータをどう処理すればいいのかわかりません。 質問は、 (1)アクセスで100項目以上あるテーブルのそれぞれの差分をだすことができるのでしょうか? (2)その方法はどうすればよいのでしょうか? また、アクセス初心者でも勉強すればすぐにできるのでしょうか? と、いうことです。 会社に迷惑をかけないためにも、可能、不可能を判断したいです。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Accessでテーブルのリンクを新規テーブルに保存
ExcelのデータをAccessのテーブルでリンクしています。 そのデータをクエリで必要なレコードだけを抽出します。 抽出したデータのみを新規テーブルとして保存したいんですが、保存の仕方がわかりません。 Access2000です。 どうかよろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Access、Aテーブルにあって、Bテーブルにない
Access初心者です。 Aテーブルに存在するレコードかつBテーブルに存在しないレコードを抽出したい。 例えば、 Aテーブル 100 300 Bテーブル 100 200 の場合、300のみ抽出したい。 どのようにすれば抽出できますか。 よろしくお願いします。
- ベストアンサー
- その他(データベース)
- ACCESSで2つのテーブル比較で一致データのみ抽出したい
ACCESS初心者です。 2つのテーブルのあるフィールドを比較して、 両方のフィールドに存在するデータであれば、それを抽出する といったことをしたいのですが、どなたか手法を教えて下さい。 よろしくお願いします。
- ベストアンサー
- その他(データベース)
- 2つのテーブルを比較して、不一致レコードを抽出するSQL文
2つのテーブルを比較して、不一致レコードを抽出するSQL文を教えてください。まったくの初心者なので、よろしくお願いします。
- ベストアンサー
- その他(データベース)
- Access 複数テーブルをまとめる
こんにちは! 過去記事を検索しましたが、該当がなく、苦戦しております… お知恵をお貸し下さいm(__)m テーブル T顧客…顧客ID(主キー)、名前、… T書類1…顧客ID(重複キー有)、書類1ID、… T書類2…顧客ID(重複キー有)、書類2ID、… T書類3…顧客ID(重複キー有)、書類3ID、… T書類4…顧客ID(重複キー有)、書類4ID、… ・ ・ ・ その他に複数同じような構造のテーブルがあります。 テーブル内には他に様々なフィールドがありますが、同一内容の結合できるフィールドは上記のみです。 上記のテーブルですべての書類IDを取ってきたいのですが、 全テーブルを顧客IDと結合し、選択クエリで抽出すると 顧客ID | 名前 | 書類1ID | 書類2ID | 書類3ID | 書類4ID 1 | Aさん | 10 | 5 | 20 | 26 1 | Aさん | 10 | 30 | 20 | 25 1 | Aさん | 10 | 4 | 20 | 26 1 | Aさん | 10 | 6 | 20 | 25 2 | Bさん | 30 | 13 | 25 | 5 2 | Bさん | 30 | 10 | 26 | 5 2 | Bさん | 30 | 13 | 26 | 5 2 | Bさん | 30 | 10 | 25 | 5 のような値が出てきてしまいます…当たり前の結果ですが… やりたいこととして、 (1)一つのテーブルかクエリで抽出 顧客ID 名前 書類1ID 書類2ID 書類3ID 書類4ID 1 Aさん | 10 | 5 | 20 | 26 | | 30 | | 25 | | 4 | | 6 2 Bさん | 30 | 13 | 25 | 5 | | 10 | 26 のように重複をなくし、 (2)更にまとめたものにしたいです。 顧客ID 名前 書類1ID 書類2ID 書類3ID 書類4ID 1 Aさん 10 5,30,4,6 20 25,26 2 Bさん 30 10,13 25,26 5 最終的に上記にまとまったものをフォームにして、顧客IDごとに抽出し、 顧客ごとの各書類のIDはこれとこれですよ!みたいにしたいのです! 説明が下手で申し訳ありませんm(__)m Access初心者で、独学でコツコツやっているので、知識が乏しいです… 調べてみるとユニオンクエリとかでできるような記事はありますが、 SQL文なども理解ができずに苦戦しております… お手数ですが、ご教示の程 よろしくお願い申し上げます。
- ベストアンサー
- オフィス系ソフト
- アクセスのテーブルを変更不可にするには?
アクセス初心者です。 行き詰まり困惑しております。 今、アクセス2003で簡単なフォームを作っています。 テーブルは2つだけで、個人情報テーブルと基本情報テーブルを クエリで結合させました。 個人情報テーブルにはテータが入力されており、 基本情報テーブルにはデータは入っていません。 個人情報テーブルのIDはオートナンバーで作成してあり、 クエリの結合は個人情報テーブルが【1】で、 基本情報テーブルは【多】になっており【1対多】で作成しました。 個人情報テーブルと基本情報テーブルで抽出したクエリを作成し、 フォームを作りました。 個人情報IDを入力すると個人情報テーブルのデータが 自動でフォーム画面に入るようにし、 基本情報を入力できるようにしてあります。 入力できるまでは良かったのですが、 フォーム上で個人情報テーブルを編集すると、 大元の個人情報テーブルまで変更になって困っています。 ここで質問なのですが、 質問1: フォーム上で個人情報テーブルの変更(編集)を出来ないようにするには どうすればよいでしょうか? 質問2: 変更できないようにしても、個人情報テーブル自体には 入力できるようすることは出来るのでしょうか? どなたか解決策をご存知であればご指導ください。 よろしくお願いします。
- ベストアンサー
- その他(データベース)
お礼
アドバイスありがとうございます。 参考にしてみます。