Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


928 / 9994 ←次へ | 前へ→

【12372】Re:テーブル同士で値の変更
質問  ナナパパ  - 13/7/4(木) 17:36 -

引用なし
パスワード
   ▼かるびの さん:
>方法1 
>
> SELECT T1.名前
>    ,IIF(IsNull(T2.変更後)=True
>      ,T1.会社名
>      ,T2.変更後
>      ) AS 社名
> FROM 氏名 AS T1
>   LEFT JOIN 会社名称変換 AS T2
>   ON T1.会社名=T2.変更前
>
>方法2
>
> SELECT T1.名前
>    ,T1.会社名
> FROM 氏名 AS T1
>   LEFT JOIN 会社名称変換 AS T2
>   ON T1.会社名=T2.変更前
> WHERE T2.変更後 Is Null
> UNION ALL
> SELECT T3.名前
>    ,T4.変更後
> FROM 氏名 AS T3
>   INNER JOIN 会社名称変換 AS T4
>   ON T3.会社名=T4.変更前
>
> でも、どっちの方が速いんだろうか。
> 方法1だと、IIF関数を使う点で遅そうだし、
>方法2だと、抽出条件で Is Null を使う点で遅くなりそうだし、
>また、ユニオンクエリだという点で時間が余計にかかりそうだし。
>
>
> なお、従来の氏名テーブルを分けて、
>   「名前」テーブル
>      名前ID  長整数型又はオートナンバー型(主キー)
>      名前   テキスト型
>      会社ID  長整数型
>   「会社名」テーブル
>      会社ID  長整数型又はオートナンバー型(主キー)
>      会社名  テキスト型
>というテーブル構成にした方がデータベース的です。
> 会社名の変更があった場合も、
>「会社名」テーブルの「会社名」フィールドの値を書き替えれば済むので、
>対応しやすくなります。


書いてなかったですが件数も置き換えしたいのですが
氏名テーブル
ID |名前|会社名 |件数
1 |太郎|太郎建設|100
2 |二郎|二郎建設|300
3 |一郎|一郎建設|10
4 |三郎|三郎建設|20

会社名称変換テーブル
ID|変更前 |変更後 
1 |一郎建設|太郎建設
2 |二郎建設|太郎建設

現在の結果クエリ
|会社名 |件数
|太郎建設|410
|三郎建設|20

希望の結果クエリ
|会社名 |件数
|太郎建設|100
|三郎建設|20

何度も申し訳ありませんが
ご教授頂ければ幸いです
182 hits

【12365】テーブル同士で値の変更 ナナパパ 13/7/2(火) 20:12 質問[未読]
【12366】Re:テーブル同士で値の変更 かるびの 13/7/3(水) 1:25 回答[未読]
【12367】Re:テーブル同士で値の変更 ナナパパ 13/7/3(水) 18:24 質問[未読]
【12368】Re:テーブル同士で値の変更 かるびの 13/7/4(木) 2:16 回答[未読]
【12369】Re:テーブル同士で値の変更 ナナパパ 13/7/4(木) 11:13 質問[未読]
【12370】Re:テーブル同士で値の変更 ナナパパ 13/7/4(木) 11:49 質問[未読]
【12371】Re:テーブル同士で値の変更 ナナパパ 13/7/4(木) 14:24 お礼[未読]
【12372】Re:テーブル同士で値の変更 ナナパパ 13/7/4(木) 17:36 質問[未読]
【12373】Re:テーブル同士で値の変更 かるびの 13/7/4(木) 20:45 回答[未読]
【12374】Re:テーブル同士で値の変更 ナナパパ 13/7/4(木) 21:23 質問[未読]
【12380】Re:テーブル同士で値の変更 かるびの 13/7/7(日) 15:49 回答[未読]
【12382】Re:テーブル同士で値の変更 ナナパパ 13/7/9(火) 9:39 質問[未読]
【12385】Re:テーブル同士で値の変更 ナナパパ 13/7/9(火) 21:02 質問[未読]
【12386】Re:テーブル同士で値の変更 かるびの 13/7/10(水) 1:25 回答[未読]
【12388】Re:テーブル同士で値の変更 ナナパパ 13/7/11(木) 17:46 質問[未読]
【12389】Re:テーブル同士で値の変更 かるびの 13/7/12(金) 1:42 回答[未読]
【12390】Re:テーブル同士で値の変更 ナナパパ 13/7/12(金) 9:41 質問[未読]
【12391】Re:テーブル同士で値の変更 かるびの 13/7/16(火) 3:25 回答[未読]
【12397】Re:テーブル同士で値の変更 ナナパパ 13/7/19(金) 18:41 質問[未読]
【12398】Re:テーブル同士で値の変更 かるびの 13/7/20(土) 2:48 回答[未読]
【12399】Re:テーブル同士で値の変更 かるびの 13/7/21(日) 14:26 回答[未読]

928 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078191
(SS)C-BOARD v3.8 is Free