table_oldというテーブルとtable_newというテーブルがあるとします。
table_oldの内容valueの値をtable_newの内容valueの値に置き換えるには更新クエリを使います。
Access2007、Access2013で確認しました。
id | value |
---|---|
1 | 10 |
2 | 20 |
3 | 30 |
4 | 40 |
id | value |
---|---|
2 | 200 |
4 | 400 |
手順
- 作成-その他-クエリデザインをクリック。
- table_oldとtable_newを追加。
- お互いのキーであるtable_oldのidとtable_newのidを結びつけるために一方から一方にドラッグ。線で結ばれます。
- デザイン-クエリの種類-更新をクリック。クエリデザイングリッドに「レコードの更新」という行が出てきます。
- table_oldのvalue(更新したい列)をダブルクリック。下の表に表示されます。
- クエリデザイングリッドのレコードの更新の行に「[table_new].[value]」と入力。
これは手で入力するしかないようです。※右クリックからビルドを選択して「式ビルダー」ダイアログを開く。式の要素でテーブルを選択、式のカテゴリでフィールドを選択する。式の値の「<値>」をダブルクリックすると上のテキストエリアに式が表示される。「OK」をクリックするとダイアログが閉じレコードの更新の行に式が入力される。Access2013で確認。
フィールド: value テーブル: table_old レコードの更新: [table_new].[value] - デザイン-結果-実行をクリック。
実行結果
table_oldのid=2のvalueが「200」に、id=4のvalueが「400」に更新されます。
id | value |
---|---|
1 | 10 |
2 | 200 |
3 | 30 |
4 | 400 |
SQL
SQLならばこんな感じです。
コメント