2010-04-01 29 views

Respuesta

43

Suponiendo SQL Server:

por ejemplo, si la clase de caracteres especiales como cualquier cosa que no alfanumérico:?

DECLARE @MyString VARCHAR(100) 
SET @MyString = 'adgkjb$' 

IF (@MyString LIKE '%[^a-zA-Z0-9]%') 
    PRINT 'Contains "special" characters' 
ELSE 
    PRINT 'Does not contain "special" characters' 

acaba de agregar a otros personajes que no clase como especial, dentro de los corchetes

+4

Al principio, esta respuesta me confundió, porque usa' LIKE' pero el^personaje en los corchetes en realidad significa 'NO' – Baodad

+1

@AdaTheDev ¿cómo excluimos "-" de los caracteres especiales en este escenario? – aaronmallen

+0

Muchas gracias, esto funciona para mí. – Ziggler

19
SELECT * FROM tableName WHERE columnName LIKE "%#%" OR columnName LIKE "%$%" OR (etc.) 
+6

+1: for etc.;) – Manish

+0

Bien, utilicé este código para simplificar mi problema. Que estaba buscando este ** a **: 'declaran @letra char (1) conjunto @letra = 'a' SELECT col1 , col2 , col3 FROM tabla WHERE col1 LIKE '%' + @letra + '%' OR col2 LIKE '%' + @letra + '%' O col3 como '%' + @letra + '%' ' – Bachask8

Cuestiones relacionadas