2012-04-30 19 views
5

test123 bir veritabanı tablo adıma ve name numaralı sütuna sahip. Ve ben aşağıda başına select deyimi ile tablo sorgulama ettiğimde, Şimdi 'nir,kal,man' gibi verileri içerir:Basit Seçim ifadesi herhangi bir sonuç döndürmez.

select * from test123 where name = 'nir,kal,man'; 

Ama bu herhangi bir sonuç döndürmez ... Bu olay neden.? Sorguyu nasıl yazmalıyım, sonuçta sonuç dönecek? Sql server 2008 kullanıyorum.

Teşekkürler!

+1

'nir, kal, erkek' tek bir isim mi, yoksa üç farklı ad 'nir'' kal',' man' ?! Sanırım sen "UZAY" bir yerde eksik olabilirsin. 'LIKE' operatörüyle sorguyu kontrol edin .. –

cevap

5

= operatör tam eşleme döner, bu nedenle hücre verisi içeren "gibi" sen LIKE operatörü kullanmanız gerektiğini: % karakterlerden herhangi seti ile değiştirilecektir

select * from test123 where name like '%nir,kal,man%' 

. Ayrıca

tam adını kullanarak doğru veritabanını hedefliyorsanız kontrol

select * from yourdb.dbo.test123 where.... 
3

Nir 2 satırda ilk satırı Kal ve adam o zaman bu

gibi sorgu yazmalısınız 3 satırda ise
select * from test123 where name in ('nir','kal','man') 
+0

Bunu denedim ama benim için çalışmıyor. –

+0

Sadece test123'teki 'select *' i değiştiriniz, burada name = ('nir', 'kal', 'man') '- test123'ten" select * "isminin (burada" name "('nir', 'kal', 'man')': -) –

İlgili konular