0
Sample items in table1 

table1.productname 
Moshi Monsters 7-in-1 Accessory Pack - Poppet 
Mario vs. Donkey Kong Mini-Land Mayhem! 

私はreplace'-したいです。!' productname使用以外のすべてから

select case
        when CHARINDEX ('-',[productname])>0 then REPLACE (ProductName ,'-',' ')
        when CHARINDEX ('!',[productname])>0 then REPLACE (ProductName ,'!','') 
        when CHARINDEX ('.',[productname])>0 then REPLACE (ProductName ,'.','') 
       else productname
       end as productname 
   from table1

交換するだけのようです-

output

Moshi Monsters 7 in 1 Accessory Pack   Poppet 
Mario vs. Donkey Kong Mini-Land Mayhem 

expected output 
Moshi Monsters 7 in 1 Accessory Pack   Poppet 
Mario vs Donkey Kong MiniLand Mayhem

これを解決するためにどのようにアプローチすればよいでしょうか。例などのように製品名に複数の文字を置き換える必要があり、列のサイズは約 5k です。実際には、変更された名前でtable1を更新したかったのですが、更新する前にどれがどのように変更されたかを確認したかったのです。この種のreplaceステートメントでは、すべての要件が満たされていないようです。更新で複数の反復を使用して実行できるようですが、更新で反復を使用する方法がわかりません。先の処理はどうすればいいですか?

4

1 に答える 1