
No.2ベストアンサー
- 回答日時:
更新クエリを使うといいかな
AテーブルとBテーブルをそれぞれコード1とコード2でリンクします。(たぶんもう1個キーになるフィールドもあると思うのですがそれもリンクする事になると思います)
この時点で、AテーブルとBテーブルのコード1とコード2が同じ物だけがレコードとして抽出されます。
レコードの更新のチェックボックスをTrueにします。
で、このクエリーを実行すると抽出されたレコードに対してTrue が設定されます。
この回答への補足
keikanさま、お世話になります。
ご教授いただきましたとおり、
選択クエリでAテーブルとBテーブルをリンクし、
(両方のテーブルの結合フィールドが同じもの)
更新クエリにしましたところ、
Bテーブルが空の時はチェックボックスが更新されるのですが、
両方にデータがある時、機能しないのです・・・
SQLは
UPDATE テーブルB INNER JOIN テーブルA ON (テーブルB.コード1 = テーブルA.コード1) AND (テーブルB.コード2 = テーブルA.コード2) SET テーブルA.コード1FG = Yes, テーブルA.コード2FG = Yes;
となっていますが、
どこかおかしいところがありますでしょうか?
お手数をおかけいたしますが、どうぞよろしくお願いいたします。
No.5
- 回答日時:
>Bテーブルが空の時はチェックボックスが更新されるのですが、
両方にデータがある時、機能しないのです・・・
この結合に於いてBテーブルが空だとすると選択されたレコードは1件もない状態だと思います。
#3さんの回答で解決されていれば良いですが、
機能しないとはどう機能しないのか?
何も変更されない?
変な変更をする?
意図しない変更をする?
などわかる範囲でお願いします。
この結合は、あくまでもテーブルAのコード1がテーブルBのコード1と等しく且つテーブルAのコード2がテーブルBのコード2が等しいときに更新される物です
またコード1が等しいときにはFLG1
コード2が等しいときはFLG2にチェックが入るようにするにはコード1だけの更新クエリーとコード2だけの更新クエリーをつくってそれぞれ実行してください。
keikanさま、度々のご教授、ありがとうございます。
何度か更新クエリを作り直してみたところ、keikanさまが最初に書き込んでくださった方法で、更新されるようになり、Yesの抽出とNoの抽出が可能になりました。
palmmyさま、O_cyanさま、色々な方法を考えていただき、ありがとうございました。
おかげさまで、既存システムへの接続がスムーズに行えるようになりました。
こんなに親切に教えていただき、本当に心から感謝申し上げます。
今日からゆっくり眠れそうです。
またお世話になることがあるとは思いますが、今後ともよろしくお願いいたします。
No.3
- 回答日時:
>caseかIfを使う・・
VBでも出来ますが#2の方が書いているように更新クエリを使った方が簡単です。
ただ#2の方の書いてあるようにするとテーブルA・Bのコード1が同一でかつテーブルA・Bのコード2が同一のレコードが抽出されてしまいます。(それで良ければ#2の方の回答で大丈夫です。ただコード1同士・コード2同士のリレーションで大丈夫です)
質問から察すればコード1が同一のレコードはコード1チェックにTrue。コード2が同一のレコードはコード2チェックにTrue。という事だと思うので
その場合コード1同士が同一ならコード1チェックをTrueにするクエリとコード2同士が同一ならコード2チェックをTrueにするクエリの2つが必要です。
テーブルAのコード1チェックだけのクエリを作りテーブル追加でテーブルBを追加します。更新のフィールドにテーブルBのコード1チェックを追加します。テーブルA・Bのコード1同士にリレーションをします。テーブルA・Bのコード1チェック両方のレコードの更新にTrueを指定します。
これでテーブルA・Bの両テーブルのコード1チェックにTrueが書き込まれる更新クエリが出来ます。
コード2チェックの更新クエリも同様にして更新フィールドを両テーブルのコード2チェックにしレコードの更新は同様にTrueです。
この2つの更新クエリを使えばOKです。
SQLを使ってクエリを記述するなら下記のように
UPDATE テーブルA INNER JOIN テーブルB ON テーブルA.コード1 = テーブルB.コード1 SET テーブルA.コード1チェック = True, テーブルB.コード1チェック = True;
コード2チェックの更新はSET以降のコード1チェックをコード2チェックに変更すればOKです。
No.1
- 回答日時:
レコードはどのように比較するのでしょうか?
キーフィールドの一致するもの同士を比較する?
仕様が同じ2つのテーブル
[1組のTEST結果][2組のTEST結果]
があって、
[1組のTEST結果]国語と[2組のTEST結果]国語
[1組のTEST結果]算数と[2組のTEST結果]算数
を比較するのだと思いますが、
出席番号が同じレコード同士を比較するとか。
[1組のTEST結果]の各レコードを[2組のTEST結果]
の全件と比較するとか。
この回答への補足
palmmyさま、ご回答ありがとうございます。
やりたいことは、AテーブルとBテーブルにある、
それぞれのコード1とコード2フィールドの全件の比較です。
他にもフィールドはたくさんあるのですが、比較するのは
コード1とコード2のみになります。
AテーブルがExcelをインポートしたデータで、
Bテーブルが前回インポートしたデータなのですが、
コード1とコード2を比較して、同じデータと違うデータ
に分岐して、別々のテーブルに追加する、という
ことをしたいのです。
このテーブルにはキーがなく、分岐したテーブルを既存の
Accessのシステムにつなげる仕様にしなければなりません。
現在は、
Aテーブルへインポート→データ比較→分岐
→同じデータをCテーブルへ追加→Bテーブル削除
→違うデータをBテーブルへ追加→既存システムへ
という順序でやっていますが、なかなかうまくできず、
もう1ヶ月も悩んでいます・・・
よろしくご教授くださいますよう、お願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Access クエリ 同一テーブル内 複数フィールドの同時集計のやり方について 1 2022/05/18 19:01
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- その他(データベース) IT用語について質問です。 以前ITパスポートの試験を受けた際にデータベースが何の集まりかについての 2 2022/12/10 12:29
- Oracle SQL update方法 2 2022/06/22 14:07
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- PHP クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したい 2 2022/07/28 15:29
このQ&Aを見た人はこんなQ&Aも見ています
-
ACCESS 複数テーブル・複数フィールドを参照する不一致クエリ
Access(アクセス)
-
ACCESS初心者 - 同一テーブルの複数フィールドの比較、値取得について
Access(アクセス)
-
【access】複数のフィールドの不一致クエリ
Visual Basic(VBA)
-
-
4
アクセスのテーブルの差分の抽出について
Access(アクセス)
-
5
Access 複数フィールドの一致
その他(Microsoft Office)
-
6
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
7
アクセスで追加した項目に全て同じ値を一発で入れたい
Access(アクセス)
-
8
ACCESSで2つフィールドの日付を比較して新しい日付を表示するには。
Access(アクセス)
-
9
ACCESS テーブルを見比べて、一致しないレコードを追加したいです
Access(アクセス)
-
10
Access]2つのテーブルを比較してフィールドの一部が一致したデータを抽出
Access(アクセス)
-
11
アクセスでレコードの内容が変更されたかどうかを調べるには
Access(アクセス)
-
12
Accessでのレコード存在チェック
その他(データベース)
-
13
クエリ上でフィールド名が2つあるときの見分け方
Access(アクセス)
-
14
Access 複数のクエリの結果をひとつの表にまとめたいのですが
Access(アクセス)
-
15
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
16
Access2010 「演算子がありません」エラー
その他(データベース)
-
17
ACCESS クエリで重複データを最新の1件だけ表示
Access(アクセス)
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
3つのテーブルから条件に一致し...
-
項目長変更後の処理について教...
-
主キーの変更
-
ACCESSについて
-
続.ORACLEのSELECTのソートに...
-
3つ以上のテーブルをUNIONする...
-
AccessのテーブルをSQL Server...
-
SELECT時の行ロックの必要性に...
-
SELECT文でのデッドロックに対...
-
重複レコードの削除
-
非連結サブフォームのレコード...
-
ACCESSにてテーブルをEXCEL形式...
-
ユニオンクエリの結果をテーブ...
-
ACCESSのBookmarkプロパティの...
-
ACCESS2007 フォーム 「バリア...
-
数百万件レコードのdelete
-
ACCESSのODBCリンクテーブルに...
-
Accessのリンクテーブルについて
-
Access VBA [リモートサーバー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
重複するキーから一番古い年月...
-
主キーの変更
-
update文で質問です。 下記の条...
-
ACCESS 一つのフィールドに複...
-
PLSQLの識別子エラー
-
accessで移動平均する方法
-
Accessユニオンクエリーで2つ...
-
続.ORACLEのSELECTのソートに...
-
Accessでフィールドを比較した...
-
行方向のデータを横に並べる
-
自分自身への矢印
-
SQL(Where句)
-
テーブルを分けるべきか
-
項目内の改行がレコードの終わ...
-
履歴を管理するテーブル構造に...
-
アクセスで重複データが消えて...
-
VIEWでテーブルの集計結果...
-
PLSQLで集計関数の値を配列に入...
おすすめ情報