Birden Fazla Sipariş Veren Müşterileri Getiren Sorgu

birden-fazla-siparis-veren-musterileri-getiren-sorgu (büyük resim için tıklayın)

Örnek olarak; api.omurserdar.com adresinde kullanmış olduğum veritabanı üzerinden gidelim. Bireysel, Sipariş, Sipariş Detay tabloları bulunmakta. Birden fazla sipariş veren bireysel kullanıcıların isimleri ve verdiği sipariş sayısı görüntülenmek istenildiğinde SQL sorgusu aşağıdaki gibi olabilir

  • SELECT b.ad as musteriAdi, COUNT(DISTINCT s.siparisKod) AS verilenTopSip
  • FROM siparis s
  • INNER JOIN siparisDetay sd
  • ON s.siparisKod = sd.siparisKod
  • INNER JOIN bireysel b
  • ON b.id=s.bireysel_id
  • GROUP BY s.bireysel_id
  • HAVING Count(DISTINCT s.siparisKod)>1

Kritik nokta; HAVING ifadesini WHERE koşulunda kullanamadığımız, GROUP BY denildiğinde kullanabildiğimiz bilgisini hatırlamaktır.

Ekran çıktısı olarak, gönderi ana resmindeki bireysel kullanıcı için musteriAdi alanında “Ali”, verilenTopSip alanında “6” bilgisi elde edilmiştir

omurs

Ö S, 30 Ağustos 2018 Perşembe 15:30 tarihinde kayıt oldu

Beğeni


Yıllara Göre Gönderiler








mysql Kategori

SQLSTATE[HY000]: General error: 1442 Error (used by statement which invoked this stored function/trigger)

Windows Komut Satırından MySQL Erişimi

İki Gün Arasındaki Zaman Farkı (TIMESTAMPDIFF)