Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Le moyen le plus rapide de supprimer les caractères non numériques d'un VARCHAR dans SQL Server

J'ai vu cette solution avec le code T-SQL et PATINDEX. J'aime bien :-)

CREATE Function [fnRemoveNonNumericCharacters](@strText VARCHAR(1000))
RETURNS VARCHAR(1000)
AS
BEGIN
    WHILE PATINDEX('%[^0-9]%', @strText) > 0
    BEGIN
        SET @strText = STUFF(@strText, PATINDEX('%[^0-9]%', @strText), 1, '')
    END
    RETURN @strText
END