- 7 Şub 2012
- 5,018
- 23
Merhabalar, bir önceki konumda sql e giriş yaptık. Tablo oluşturmayı, primary-foreign keyi, ilişki kurmayı, insert ,select ve join sorgularını anlattım : http://www.turkhackteam.org/diger-p...ler/1536609-sql-sorgulari-yazalim-ihan3t.html
Şimdi ki konumda select sorgularını filtrelemeyi, kısıtlandırmayı göstereceğim.
Öncelikle bir önceki konuda oluşturduğumuz iki tabloya yeni veriler ekleyelim :
Kod:
INSERT INTO thtihan3t_kullanicilar (isim, email) VALUES ('yeni kullanici', '[email protected]');
INSERT INTO konular (konu_baslik, icerik, kullanici_id) VALUES ('yeni konu', 'yeni bir konu içeriği', 2);
Bu iki kodu sırasıyla çalıştırın.
Bir sonraki sorgumuz ile arasındaki farkları görebilmek açısından öncelikle tüm kullanıcılara ait konuları listeleyelim :
Kod:
SELECT * FROM thtihan3t_kullanicilar
INNER JOIN konular
ON konular.kullanici_id = thtihan3t_kullanicilar.id;
çıktı :
Kod:
1 ihan3t [email][email protected][/email] 1 sql kodu yazalim - ihan3t NULL 1
2 yeni kullanici [email][email protected][/email] 3 yeni konu yeni bir konu içeriği 2
Şimdi şöyle bir filtreleme yapalım, kullanıcı id si 1 olan kullanıcının konularını listeleyelim:
Kod:
SELECT * FROM thtihan3t_kullanicilar
INNER JOIN konular
ON konular.kullanici_id = thtihan3t_kullanicilar.id
WHERE thtihan3t_kullanicilar.id = 1;
İki tabloyu bir önceki konuda anlattığım "join" ile birleştirip "where" kullanarak kullanıcı id si 1 olan konuları listeledik. Şöyle bir çıktısı oluyor :
Kod:
1 ihan3t [email][email protected][/email] 1 sql kodu yazalim - ihan3t NULL 1
Şimdi ihan3t kullanıcısına bir konu daha ekleyelim :
Kod:
INSERT INTO konular (konu_baslik, icerik, kullanici_id) VALUES ('sql sorguları part 2 - ihan3t', 'sql sorguları yazıyoruz', 1);
Şimdi tekrardan ihan3t kullanıcısına ait konuları listeleyelim, fakat bu sefer kullanıcı id değil, kullanıcı adını kullanalım :
Kod:
SELECT * FROM thtihan3t_kullanicilar
INNER JOIN konular
ON konular.kullanici_id = thtihan3t_kullanicilar.id
WHERE thtihan3t_kullanicilar.isim = 'ihan3t';
Kod:
1 ihan3t [email][email protected][/email] 1 sql kodu yazalim - ihan3t NULL 1
1 ihan3t [email][email protected][/email] 4 sql sorguları part 2 - ihan3t sql sorguları yazıyoruz 1
Böyle bir çıktı aldık.
Şimdi çıktımızı sadece 1 adet ile sınırlandıralım :
Kod:
SELECT * FROM thtihan3t_kullanicilar
INNER JOIN konular
ON konular.kullanici_id = thtihan3t_kullanicilar.id
WHERE thtihan3t_kullanicilar.isim = 'ihan3t'
LIMIT 1;
Kod:
1 ihan3t [email][email protected][/email] 1 sql kodu yazalim - ihan3t NULL 1
Bu sefer sadece tek bir kayıt çıktısı aldık.
Part 3 ile diğer sql komutlarına değineceğiz. İyi forumlar dilerim, ihan3t.