SQL cümlesi

Kodla Büyü

volkankey

Hiperaktif Üye
Hiperaktif
Mesajlar
2,895
arkadaşlar işin içinden çıkamadım.
2 tablom var.

tablo1
id
ad
soyad

tablo2
id
tablo1_id
bilgi
icerik


Tablo1 ve tablo2 yi bağlayarak tablo2 deki "bilgi" ve "icerik" alanlarına göre tablo1 i filtrelemem lazım.
Tek bir koşul olunca sorun yok

select * from tablo1 inner join tablo2 ON tablo1.ID =tablo2.tablo1_id where tablo2.bilgi="sehir" and tablo2.icerik="istanbul"

Ancak bu bilgi ve içerik satırlarında onlarca ayrı bilgi tutuluyor.
Yapmak istediğim

select * from tablo1 inner join tablo2 ON tablo1.ID =tablo2.tablo1_id where tablo2.bilgi="sehir" and tablo2.icerik="istanbul" and tablo2.bilgi="ilce" and tablo2.icerik="Avcılar"

ama bu kodla hiç kayıt listeleyemiyorum.

SQL kodunu nasıl yazmam gerek.
 
tablo iki üzerinden yaptığınız sorguda aynı anda hem il ve ilçe ile istanbul ve avcılar olmasını istiyorsunuz. Bu tarz bir kayıt zaten olamaz.

where (tablo2.bilgi="sehir" and tablo2.icerik="istanbul") or (tablo2.bilgi="ilce" and tablo2.icerik="Avcılar")

şöyle olursa belki işinizi görür. Bu haliyle şehir istanbul olan yada ilçe avcılar olan tüm kayıtları listelemesi gerekir.

Tabii sorunuzda hangi durumları istediğinizi yazmadığınız için tahmin yürüterek bu sonuca vardım. :) Kolay gelsin.
 
hocam sagol ama
bunun bir yolu olmali tamam tablo yapisi kotu kurulmus ama mutlaka bir sekilde yapiliyordur

tablo2
id bilgi icerik
1 sehir istanbul
1 ilce avcilar
2 sehir istanbul
2 ilce beylikduzu

tablodan sehir istanbul ve ilce beylikduzu olanlari nasil secerim

yardim???
 
hocam sen bi basit sql dump ekle foruma. O şekilde bir deneyeyim ben. Böyle yazılarla olmuyor sistem :D
 
BBNET
Geri
Üst