電子書籍の厳選無料作品が豊富!

以下の様な2つのテーブルが有った場合、[商品テーブルA]と[商品テーブルB]
の商品名フィールド同士の商品名が部分一致した場合、
[商品テーブルB]のIDフィールドに[商品テーブルA]のIDフィールドのID番号を
付与したいと考えております。

この様な場合のSQL文を教えて頂けませんでしょうか。

[商品テーブルA]
ID  商品名
-------------
1  A1AAAA
2  A1AAAB
3  A1AABB
4  A1ABBB
5  A1BBBB


[商品テーブルB]
ID  商品名
-------------
   AAAB
   AAAA
   BBBB
   AABB
   ABBB


SQLの結果として[商品テーブルB]が以下の様に更新される結果を期待しています。

【結果】
[商品テーブルB]
ID  商品名
-------------
2  AAAB
1  AAAA
5  BBBB
3  AABB
4  ABBB


商品名が完全一致する場合であれば、update inner join on set を使えば上手くいのですが、
部分一致の場合どの様にすれば良いのか、行き詰っています。

以上、宜しくお願い致します。

A 回答 (11件中11~11件)

完全一致ならうまくいくんですね?



なら、
[商品テーブルA]をクエリで更新して 共通であろう先頭のA1を取ってしまえばいいのでは?

更新クエリを作成して、
商品名を
レコード更新:Mid([商品名],3)
として、1度実行します

これは、先頭の2文字目以降を抽出するので
A1AAAA → AAAA となります。

これで商品名が完全一致になるので、その後ID修正のSQLを実行しては如何でしょう?

的外れな回答でしたら、本当にスイマセン。
必ず、サンプルでテストしてからお願いしますね。
(ホント間違ってたらごめんなさい、Access歴2日なので…)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す