MS SQL 去除欄位中的大小寫英文、數字、特定符號

  • 413
  • 0

MS SQL 去除欄位中的大小寫英文、數字、特定符號

這是要去除欄位中的大小寫英文、數字、特定符號

所以原本是想用REPALCE

但是要指定大小寫英文、數字、特定符號需要處理很多次

所以就建立Function來處理

 

以下是MS SQL的CODE

建立Function  RemoveCharacters

在RemoveCharacters的@KeepValues指定正規化的規則

如果需要調整就是調@KeepValues

 

最後執行完要記得DROP   Function  

Create Function [dbo].[RemoveCharacters](@Temp VarChar(1000)) 
Returns VarChar(1000) 
AS 
Begin 

    Declare @KeepValues as varchar(50) 
    Set @KeepValues = '%[a-z,A-Z,0-9,%,/,=,-,#,,,:,;]%' 
    While PatIndex(@KeepValues, @Temp) > 0 
     Set @Temp = Stuff(@Temp, PatIndex(@KeepValues, @Temp), 1, '') 

    Return @Temp 
End 

Select dbo.RemoveCharacters('這是AB中文abv的0,1範例223') 

DROP  Function [dbo].[RemoveCharacters]

 

自我LV~