Sql istemediğiniz verileri göstermeme Sql not in kullanımı

Sql istemediğiniz verileri göstermeme Sql not in kullanımı

  • 3 Temmuz 2013
  • 5 Okunma
  • 4 Yorum
  • 5 DK

Bu yazımda sizlere mysqlde listede çıkmasını istemediğiniz verileri nasıl çıkartmıcanızı göstericem (Çok ilginç bi anlatım oldu farkındayım 🙂 )

Şimdi aslında bizim asıl sql kodumuz NOT IN ()

Ben size örnek kullanımlarını yazıcam mantığını iyice anlayın diye. Şimdi 1. örneğimiz çok basit olacak şimdi

 

tablo

Yukarıdaki gibi bir tablomuz olduğunu düşüneylim. Phpmyadmin de çalışıyoruz sizin kendi sql programınız varsa onuda kullanabilirsiniz. Ben herkesin elinde olduğundan phpmyadmini seçtim. Neyse kodumuza dönelim.

SELECT * FROM `uyeler` WHERE id NOT IN (SELECT id FROM uyeler WHERE id="1")

Yukarıdaki kodu aşağıdaki resimdeki yere yapıştırıyoruz.
1. Yazdığım yere tıklıyorsunuz ve bu pencere açılıyor
2. yazdığım yerede kodu yapıştırıyorsunuz.

Screenshot_1

Böyle bir tablonuz var sutun adlarıda sql kodu ile uyuşuyorsa aynı penceredeki “Git” butonuna basınca size

Screenshot_2

Yukarıdaki gibi bir çıktı verecek burada sadece Hasan üyesi yok çünkü ben sql kodunda dedim ki

Bütün üyelerin içerisinde sadece id si 1 olanı listeden çıkart
SELECT * FROM `uyeler` WHERE id NOT IN (SELECT id FROM uyeler WHERE id=”1″)

valla renkli renkli anlattım 😀 anlamamanız mümkün değil 😀

Şimdi biz bunu İdrisin yeni sitesinde önerilen kişileri listelemek için kullandık. Mantık şuydu

Kendisi ve takip ettiği kişiler hariç bütün üyeleri listele.

Şimdi mantığımız bu ve koduda buna göre çeviricez ama ilk önce size ben tablomuzu biraz açıklayayım. Tablomuzda takip_id yazan sutun üyelerin id si yani şöyle

Screenshot_3

Yani Hasan 4 idsine sahip olan merti takip ediyor
İdris 1 idsine sahip olan Hasanı takip ediyor
Taner 1 idsine sahip olan Hasanı takip ediyor
Mert 2 idsine sahip olan idris takip ediyor

Ben Hasan ı kullanarak diğer önerilen kişileri göstericem Kodumuzu şöyle değiştiriyoruz

SELECT * FROM `uyeler` WHERE id NOT IN (SELECT id FROM uyeler WHERE id="1") AND id NOT IN (SELECT id FROM uyeler WHERE takip_id="1")

Kodumuz yukarıdaki gibidir. Açıklamasınıda yaparsak

Bütün üyeler içerisinde sadece idsi 1 olan ve takip_id si 1 olan üyeler hariç hepsini listele
SELECT * FROM `uyeler` WHERE id NOT IN (SELECT id FROM uyeler WHERE id=”1″) AND id NOT IN (SELECT id FROM uyeler WHERE takip_id=”1″)

Bize çıktı olarak sadece Mert çıkacaktır çünkü Mert Hasan üyesini takip etmiyor idrisi takip ediyor. Yukarıdada açıkladım. Şimdi bazı kişiler sql dorgusundaki id=”1″ nedir site sorabilir o da üye id sidir siz oraya 2 yazarsanız 2 id li üyeye göre işlem yapacaktır. Bu sql kullanırken id=”1″ kısmındaki id yi sitenize giriş yapan kullanıcının idisini yazmalısınız. Anlamadığınız yer varsa yorum olarak atın.

Kolay gelsin…

HAYATI KODLA'YA ABONE OLUN!!
ETKİLEYİCİ BİR YORUM BIRAK

Sql istemediğiniz verileri göstermeme Sql not in kullanımı İle Benzer Yazılar

"Sql istemediğiniz verileri göstermeme Sql not in kullanımı" Yazısına uygun diğer makalerler