sql >> Database >  >> RDS >> Sqlserver

Hoe verwijder ik alle niet-alfabetische tekens uit de tekenreeks in SQL Server?

Probeer deze functie:

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

Noem het zo:

Select dbo.RemoveNonAlphaCharacters('abc1234def5678ghi90jkl')

Als u de code eenmaal begrijpt, zou u moeten zien dat het relatief eenvoudig is om deze te wijzigen om ook andere tekens te verwijderen. Je zou dit zelfs dynamisch genoeg kunnen maken om in je zoekpatroon door te geven.

Ik hoop dat het helpt.



  1. Toegang geweigerd voor gebruiker 'root'@'localhost' met PHPMyAdmin

  2. Hoe ojdbc7 toevoegen aan Java-webapp door Gradle?

  3. Hoe u SQL Server-databases van het ene exemplaar naar het andere kopieert

  4. Retourneer rijen in de exacte volgorde waarin ze zijn ingevoegd