Ĉ¿
Está função para limpar caracteres não numéricos de uma campo no banco de dados SQL SERVER
CREATE FUNCTION [dbo].[FC_TiraLetras]
(
@Resultado VARCHAR(8000)
)
RETURNS VARCHAR(8000)
AS
BEGIN
DECLARE @CharInvalido SMALLINT
SET @CharInvalido = PATINDEX('%[^0-9]%', @Resultado)
WHILE @CharInvalido > 0
BEGIN
SET @Resultado = STUFF(@Resultado, @CharInvalido, 1, '')
SET @CharInvalido = PATINDEX('%[^0-9]%', @Resultado)
END
SET @Resultado = @Resultado
RETURN @Resultado
END
Depois de criado a função basta executa-la
SELECT TOP 1000
dbo.FC_TiraLetras(PAC_NUMERO_ENDERECO ) AS LOG_STR_NUM
from TABELA XXX
Se quiser também pode mudar o campo para inteiro com este comando
ALTER TABELA XXX ALTER COLUMN LOG_STR_NUM int
Referencia: http://sqlbrasil.blogspot.com.br/