Ana içeriğe geç
Kesit SQL
Orta · Bitirme Projeleri

Bitirme projesi (İş Zekâsı): Anadolu Market yönetim KPI panosu için veri hazırlığı

Panoya beslenecek aylık KPI tablosu, kanal payları, yıllık karşılaştırma ve ürün liderleri.

Uygulamada aç, 7 alıştırmayı çözÜcretsiz, hesap gerekmez, kurulum yok.

Bu sayfa dersin okuma sürümüdür. Metin bir kutuyu çalıştırmanı ya da adıma geçmeni söylüyorsa dersi uygulamada aç.

Senaryo

Genel müdür her ay başında tek ekranda şirketin nabzını görmek istiyor. Power BI / Looker Studio panosunu kuracak ekip, senden hazır hesaplanmış tablolar bekliyor; panoda karmaşık hesap yapılmayacak.

Tanımlar (KPI sözlüğü)

KPITanım
Net ciroTeslim edilen siparişlerin Σ adet × birim fiyat × (1 − indirim)
SiparişTüm durumlardaki sipariş sayısı
Aktif müşteriO ay en az bir sipariş veren tekil müşteri
Ortalama sepetNet ciro ÷ teslim edilen sipariş sayısı
İptal oranıİptal edilen sipariş ÷ tüm siparişler
BI ekibine iyilikHer tabloya açık sütun adları ver, oranları yüzde değil 0–1 arası ya da tutarlı biçimde ver ve tanımları dokümante et. Tanım farkı, panolardaki tartışmaların bir numaralı nedenidir.

Derinleş: panoya güvenilir veri vermek

Brif: Genel müdür ve BI ekibi“Panoyu her ayın ilk iş günü açıp büyüme ve iptal trendine göre satış ekibinin hedeflerini güncelleyeceğim. Panodaki sayı ile finansın sayısı tutmazsa panoya kimse bakmaz.” BI ekibi ekliyor: “Bize ay düzeyinde, sütun adları sabit tablolar ver.”

Çalışma planı

  1. KPI sözlüğünü kilitle. Her ölçüyü bir cümleyle tanımla ve hangi durumların dahil olduğunu yaz (ciro = yalnızca teslim; sipariş = tüm durumlar).
  2. Ölçüyü kendi grain düzeyinde hesapla. Sipariş sayısı orders'tan, ciro order_items'tan gelir. İkisini aynı JOIN'de hesaplarsan sipariş sayısı kalem sayısına şişer (Ek görev 1).
  3. Boş ayları düşün. Bir ayda hiç değer yoksa GROUP BY o ayı hiç üretmez; panoda çizgi “kopar”. Ek görev 2'de Kasım ve Aralık bu yüzden görünmez.

Kontrol listesi

SELECT strftime('%Y', o.order_date) AS yil,
       COUNT(DISTINCT o.order_id) AS teslim_siparis,
       ROUND(SUM(oi.quantity * oi.unit_price * (1 - oi.discount)), 0) AS net_ciro
FROM orders o
JOIN order_items oi ON oi.order_id = o.order_id
WHERE o.status = 'delivered' AND o.order_date >= '2023-01-01'
GROUP BY strftime('%Y', o.order_date)
ORDER BY yil;

Teslim

BI ekibine görünüm(ler) + KPI sözlüğü; genel müdüre panonun üstünde dört KPI kartı ve aylık çizgi grafik.

Yönetici özeti örneği2024 net cirosu 636.316 TL ile 2023'e göre %89,6 arttı. Son çeyrek yılın %35'ini getirdi; zirve Kasım (82.740 TL). İptal oranı Nisan'daki %13,8'den Aralık'ta %6,5'e indi; mobil kanal cironun %47,2'siyle en büyük pay.

Kendini değerlendir

ÖlçütBaşlangıçİyiMükemmel
TanımlarÖrtükKPI sözlüğü yazılıHer sütun sözlükle birebir, durum filtreleri açık
DoğrulamaYokYıllık toplam mutabıkTanecik, pay ve boş ay kontrolleri yapılmış
TeslimTek seferlik sorguGörünümGörünüm + sözlük + pano taslağı
Alıştırmalara geç (7)