Saltar al contenido

Encuentra todos los caracteres especiales en una columna en SQL Server 2008

Verificamos de forma cada uno de los posts en nuestro espacio con la meta de enseñarte siempre información con la mayor veracidad y actualizada.

Solución:

Los negativos son tus amigos aquí:

SELECT Col1
FROM TABLE
WHERE Col1 like '%[^a-Z0-9]%'

Lo que dice que quieres filas donde Col1 consta de cualquier número de caracteres, entonces un carácter no en el conjunto a-Z0-9, y luego cualquier número de caracteres.

Si tiene una intercalación que distingue entre mayúsculas y minúsculas, es importante que use un rango que incluya mayúsculas y minúsculas A, a, Z y zque es lo que he dado (originalmente lo tenía al revés. a viene antes A. Z viene después z)


O, para decirlo de otra manera, podría haber escrito su original WHERE como:

Col1 LIKE '[[email protected]#$%]'

Pero, como observó, necesitaría saber todos de los personajes a incluir en el [].

El siguiente script transact SQL funciona para todos los idiomas (internacional). La solución no es verificar alfanuméricos sino verificar que no contenga caracteres especiales.

DECLARE @teststring nvarchar(max)
SET @teststring = 'Test''Me'
SELECT 'IS ALPHANUMERIC: ' + @teststring
WHERE @teststring NOT LIKE '%[-!#%&+,./:;<=>@`~"()*\_^?[]'']%' ESCAPE ''

Select * from TableName Where ColumnName LIKE '%[^A-Za-z0-9, ]%'

Esto le dará toda la fila que contiene cualquier carácter especial.

Al final de todo puedes encontrar las reseñas de otros usuarios, tú asimismo tienes la opción de mostrar el tuyo si lo crees conveniente.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

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