2010-04-01 18 views

cevap

43

varsayarsak SQL Server:

örn Eğer alfanümerik DEĞİL şey gibi özel karakterler sınıf ise:?

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' 

Hemen eklemek diğer karakterler Eğer köşeli parantez içindeki

+4

Bu cevap ilk başta beni şaşırttı, çünkü 'LIKE' kullanıyor ama Köşeli parantez içinde^karakteri, 'Bu' – Baodad

+1

@AdaTheDev 'in, bu senaryodaki özel karakterlerden nasıl "-" hariç tuttuğunu gösterir? – aaronmallen

+0

Bu benim için çok teşekkür ederim. – Ziggler

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

+1: vb.) – Manish

+0

Güzel, sorunumu basitleştirmek için bu kodu kullandım. Bu arıyordu ** A **: '@letra char (1) grubu @letra = 'A' ilan SEÇ col1 , col2 tablodan col3 col1 LIKE '%' + @letra + '%' VEYA col2 LIKE '%' + @letra + '%' OR col3 like '%' + @letra + '%' ' – Bachask8

İlgili konular