お世話になります。
先日、ご質問させていただきましたが、質問内容が変わってきたので、質問させてください。
Accessで特定の文字を置き換えたいです。
商品名の一部を置換したいのですが、
I たばこ
II 文房具
(1) 工具
(2) 雑貨
これの、
Iと(1)を1に置換し、
IIと(2)を2に置換したいです。
1:1(Iを1)で置換する、式は作成出来たのですが、2:1(Ior(1)を1)で置換する式はどうしたらいいのでしょうか?
1:1で作成した、SQLは下記のようになっています。
UPDATE [★商品テーブル] SET [★商品テーブル].商品名= Replace([商品名],"(1)","1")
WHERE ((([★商品テーブル].商品名) Like "*(1)*"));
クエリでフィールドを増やして、作成しようとすると、商品名が重複しています。とエラーができます。
お力を貸してください。
No.1ベストアンサー
- 回答日時:
UPDATE [★商品テーブル]
SET [★商品テーブル].商品名= Replace(Replace([商品名],"(1)","1"),"I","1")
WHERE ((([★商品テーブル].商品名) Like "*(1)*") or (([★商品テーブル].商品名) Like "*I*"));
かな?
この回答への補足
すごいですねっ!!ありがとうございます。
ちなみに、(2)とIIを2にも置換したいのですが、その場合は、もう1つクエリを作るしかないのでしょうか?
クエリでフィールドを増やして、作成しようとすると、商品名が重複していと出てしまうので。
お手数ですが、教えてください。
No.2
- 回答日時:
>Replace([商品名],"(1)","1")
これじゃ置き換えたい数字の数だけクエリがいるのでは?
あるいは数だけのネスト?
数字の後ろのスペースが必ずあるのなら
下のような変換対応テーブルを作ります
旧新
I1
II2
(1)1
(2)2
こうしておいて
UPDATE 元テーブル INNER JOIN 対応テーブル ON left(元テーブル.商品名,instr(元テーブル.商品名," ")-1) = 対応テーブル.旧 SET 元テーブル.商品名 = [新] & " " & mid(元テーブル.商品名,instr(元テーブル.商品名," ")+1);
このクエリ(SQL)は結合条件に式を使用しているのでデザインビューでは作れません
この回答への補足
ありがとうございます。
ただ、商品名にスペースがあるとは限らないです。
CHRONOS_0さんのおっしゃる通り、テーブルで、変換表を作成して、置換するのが、ベストだと思うのですが
やり方がわからなくて、入れ子でやってくしかないのかなぁ。 と思って、このようなご質問にさせて頂きました。
↓以前させて頂いた質問です。
http://oshiete1.goo.ne.jp/qa2867022.html
商品名にスペースがあるとは限らないのですが、他の方法がありましたらお力貸してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- バイク車検・修理・メンテナンス GSX250R ローダウンについて。 こちらの商品は純正サスを使い、写真の部分を交換する事で3.5c 2 2023/04/23 11:46
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- 食べ物・食材 カルディにお詳しい方への質問 2 2023/01/10 21:05
- PostgreSQL PostgreSQL レコードからアイテム種類数を取得したい 2 2022/11/23 22:31
- その他(データベース) accessについて 2 2022/05/31 16:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
accessのテーブルを閉じたとき...
-
AccessVBAで任意の複数リンクテ...
-
最新日のデータのみ抽出するク...
-
Accessのリンクされたテーブル...
-
Accessで表計算のMatch関数のよ...
-
accessについて(超初心者です)
-
Accessでテキストフィールドの集計
-
テーブルに表示されているもの...
-
2つのテーブルに共通するレコ...
-
access vbaにてテンポラリーテ...
-
テーブル内の文字数が多くても...
-
Accessで、別のテーブルにある...
-
ACCESS テーブル同士の照合
-
Access2003 異なるテーブルを...
-
日付型のフィールドに空白を入...
-
ACCESSの時間帯の抽出について
-
差込印刷での全角表示について...
-
テキストボックスにクエリ結果...
-
「年」と「月」だけの日付の表...
-
更新クエリをリンクデータベー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
最新日のデータのみ抽出するク...
-
テーブルに表示されているもの...
-
Acccessで2つのテーブルから1...
-
Accessでリストの並び順を変更...
-
Accessのリンクされたテーブル...
-
ACCESSユニオンクエリから新テ...
-
access vbaにてテンポラリーテ...
-
ACCESS テーブルを見比...
-
Accessのテーブルで、リンク?...
-
ACCESSでテーブルをコピーしよ...
-
アクセス 部分一致の抽出
-
accessについて(超初心者です)
-
Microsoft Access 「Form」のボ...
-
クエリで同一テーブルの複数回...
-
access2000・・テーブルをデー...
-
アクセス2016 チェックボックス...
-
Accessで使用しているリンクテ...
-
アクセス2000でのリンク先...
-
accessのテーブルを閉じたとき...
おすすめ情報