Merhaba arkadaşlar. mysql ile alakalı bir sıkıntım var. Mysql tablosunda array search yapmaya calisiyorum.
SELECT * FROM tabloadi WHERE tarih > '2012-11-27' and alan1 IN (1,2,3) ORDER BY tarih ASC
şeklinde mysql komut satırımı oluşturduğumda sonuç alıyorum sıkıntı yok benim sıkıntım şurda başliyor.
SELECT * FROM kampanya WHERE tarih > '2012-11-27' and alan1 IN (1,2,3) and alan2 IN (2,3) ORDER BY tarih ASC
yani 2. bir array araması koyduğumda hata vermiyor ama sonuçta vermiyor. Ancak veri tabanı alanlarımda aradiğım alanlarda 1 2 3 değerleri mevcut ancak sonuç yok.
Konu hakkında bilgisi olan yardımcı olabilirmi. Yada farklı bir fikri olan varsa paylaşabilirmi. Teşekkür Ederim. Şimdiden. Kolay Gelsin.
Mysql array search (IN) yardım.
18
●1.098
- 27-11-2012, 14:15:11OR değil hocam AND kullanmam gerekiyor. yada değil ve yani.frdtrkc adlı üyeden alıntı: mesajı görüntüle
- 27-11-2012, 14:17:02Kimlik doğrulama veya yönetimden onay bekliyor.SQL sorguda bir hata olduğunu düşünmüyorum. Sorun başka bir yerde olabilir.neptun adlı üyeden alıntı: mesajı görüntüle
- 27-11-2012, 14:22:20mysql hata vermiyor zaten. sonuç vermiyor.XYZ adlı üyeden alıntı: mesajı görüntüle
- 27-11-2012, 14:24:10Aynı sorguyu phpmyadmin'den denediğinizde sonuç alıyor musunuz ?neptun adlı üyeden alıntı: mesajı görüntüle
- 27-11-2012, 14:32:09SELECT * FROM kampanya WHERE tarih > '2012-11-27' and alan1 IN (1,2,3) and alan2 IN (2,3) ORDER BY tarih ASC
bunun ne anlama geldiğini açıklarsak belki hatayı bulabilirsiniz.
alan1 IN (1,2,3) and alan2 IN (2,3) demek :
(alan1 = 1 AND alan2 = 2 OR alan1 = 1 AND alan2 = 3)
OR
(alan1 = 2 AND alan2 = 2 OR alan1 = 2 AND alan2 = 3)
OR
(alan1 = 3 AND alan2 = 2 OR alan1 = 3 AND alan2 = 3)
bu koşulları taşıyan kolonlar var mı?