A função abaixo está originalmente escrita para retornar apenas os números naturais [0-9] de uma string que tenha sido passada como parâmetro.

A forma como está implementada dá pra imaginar com poucos ajustes realizar outras manipulações de string.

CREATE FUNCTION fn_RetornaNumeros (@PALAVRA VARCHAR (1000)) RETURNS VARCHAR (1000) AS
BEGIN
DECLARE
@RESULTADO VARCHAR (1000),
@LETRA VARCHAR(1),
@QTD_PALAVRA INTEGER,
@CONT INTEGER

SET @CONT = 0
SET @QTD_PALAVRA = LEN(@PALAVRA)
SET @RESULTADO = ”
WHILE @CONT < @QTD_PALAVRA
BEGIN
SET @CONT = @CONT + 1
SET @LETRA = SUBSTRING(@PALAVRA,@CONT,1)
IF @LETRA IN (‘0′,’1′,’2′,’3′,’4′,’5′,’6′,’7′,’8′,’9’ )
BEGIN
SET @RESULTADO = @RESULTADO + @LETRA
END
END

RETURN @RESULTADO
END

Originalmente este objeto foi postado através do link: http://www.devmedia.com.br/funcao-sql-que-retorna-somente-os-numeros-de-um-string/2288 pesquisado no dia 15-09-2012