Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie entferne ich alle nicht alphabetischen Zeichen aus der Zeichenfolge in SQL Server?

Probieren Sie diese Funktion aus:

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

    Declare @KeepValues as varchar(50)
    Set @KeepValues = '%[^a-z]%'
    While PatIndex(@KeepValues, @Temp) > 0
        Set @Temp = Stuff(@Temp, PatIndex(@KeepValues, @Temp), 1, '')

    Return @Temp
End

Nennen Sie es so:

Select dbo.RemoveNonAlphaCharacters('abc1234def5678ghi90jkl')

Sobald Sie den Code verstanden haben, sollten Sie sehen, dass es relativ einfach ist, ihn zu ändern, um auch andere Zeichen zu entfernen. Sie könnten dies sogar so dynamisch gestalten, dass Ihr Suchmuster übergeben wird.

Hoffe es hilft.