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(アクセス)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
AccessのWHERE句において、変数は使用できますか?
Access(アクセス)
-
-
4
ACCESSでのフィールド比較方法?
その他(データベース)
-
5
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
6
クエリのデータをテーブルに入れたい
Access(アクセス)
-
7
Access を利用した大量データにおけるマッチング
Excel(エクセル)
-
8
ACCESSのクエリで抽出条件「または」は9個までしかかけませんよね…
Access(アクセス)
-
9
Access サブフォームでの選択行の取得
その他(データベース)
-
10
【Access】クエリで抽出したデータをCSV形式でエクスポートできますか?
Access(アクセス)
-
11
【access】複数のフィールドの不一致クエリ
Visual Basic(VBA)
-
12
アクセスの初心者の質問です(空白の場合に他のフィールドを表示させたい。)
Access(アクセス)
-
13
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
14
iif関数で3つ以上条件を抽出したい場合
IT・エンジニアリング
-
15
クエリで出来た表にチェックボックスを追加する
その他(Microsoft Office)
-
16
Access 複数フィールドの一致
その他(Microsoft Office)
-
17
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
18
Accessクエリで特定の行を削除したい
Access(アクセス)
-
19
ACCESS初心者 - 同一テーブルの複数フィールドの比較、値取得について
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
重複するキーから一番古い年月...
-
SQL文で質問
-
Accessユニオンクエリーで2つ...
-
商品コード番号を入力すると商...
-
2つのテーブルから条件に一致...
-
PLSQLの識別子エラー
-
VIEWでテーブルの集計結果...
-
ACCESS 一つのフィールドに複...
-
ACCESSのSQLで、NULLかNULLでな...
-
[ BETWEEN ] vs [ >= AND <= ]
-
Access 1レコードずつcsvで出力...
-
Access VBA Me.Requery レコー...
-
accessテーブル作成クエリを実...
-
MySQLがPostgreSQLより優れてい...
-
SELECT文でのデッドロックに対...
-
インデックスの再構築の意味っ...
-
Access VBA [リモートサーバー...
-
Accessのリンクテーブルについて
-
非連結サブフォームのレコード...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
重複するキーから一番古い年月...
-
ACCESS 一つのフィールドに複...
-
PLSQLの識別子エラー
-
主キーの変更
-
Accessでフィールドを比較した...
-
SQL 2つのテーブルとSUBSTRING...
-
行方向のデータを横に並べる
-
続.ORACLEのSELECTのソートに...
-
下記のsqlで取得されるレコード...
-
update文で質問です。 下記の条...
-
VIEWでテーブルの集計結果...
-
[Oracle] UPDATE分の副問い合わ...
-
自分自身への矢印
-
片方だけ抽出する方法(SQL)
-
Accessユニオンクエリーで2つ...
-
連番のMin, Maxを取得したい
-
日付の最大値を検索条件にする方法
-
Inner join と Left joinの明...
おすすめ情報