SQL Server – Como remover todos los caracteres desde un String usando T-SQL

Muchas veces como desarrolladores tenemos que manipular strings en nuestras consultas usando el lenguaje T-SQL, en este caso veremos una alternativa para poder remover todos los caracteres de un string dejando solo los números en dicha cadena de caracteres.

Problema:

Supongamos que tenemos el siguiente string “adfer123df34” y deseamos solo quedarnos con los números enteros de dicha cadena de caracteres.

Solución:

SET NOCOUNT ON
DECLARE @contador INT
DECLARE @cadena VARCHAR(8000)
SELECT @cadena = ‘adfer123df34’
SET @contador = 0
WHILE @contador < 26
BEGIN
SET @cadena = REPLACE(@cadena, CHAR(65 + @contador), ”)
SET @contador = @contador + 1
END

SELECT @cadena

Como vemos en el código de arriba estamos utilizando los códigos decimales de los caracteres ASCII de  la A – Z (65 – 90) y estos son remplazados en la cadena por vacío.

Resultado:

‘12334’

Esta es una de las distintas alternativas que podemos utilizar para llegar al resultado solicitado en el problema planteado. Espero sus comentarios o dejo el desafío planteado de encontrar otras posibles soluciones para poder resolverlo. Hasta la próxima !!

The following two tabs change content below.
Admin

Admin

Administrador de Dotnetuy, con más de 20 años de experiencia en el mundo de la informática y el desarrollo de software en diferentes lenguajes, trabajando en backend y frontend, desde sus primeros pasos con clipper cuando comenzaba la década de los 90’s , y continuando con pascal, C, C++, Visual basic, y multiples gestores de bases de datos hasta hoy en día con C# y todas las técnologias relacionadas con .NET.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *