Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Il modo più rapido per rimuovere i caratteri non numerici da un VARCHAR in SQL Server

Ho visto questa soluzione con codice T-SQL e PATINDEX. Mi piace :-)

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