İçeriğe geç
Educora

Formüller ve kolay yollar

SQL · 20

Bu kurstaki tüm formüller ve onları hatırlamanın kolay yolları tek sayfada.

1İleri düzey SQLİleri

Pencere fonksiyonları

Derse git

CTE: WITH ve özyinelemeli sorgular

Derse git

CASE ve koşullu mantık

Derse git

Metin, tarih ve matematik fonksiyonları

Derse git

Küme işlemleri ve gelişmiş birleştirmeler

Derse git

2Profesyonel düzeyde veritabanlarıÜniversite

Veritabanı tasarımı ve normalizasyon

Derse git
X → Y ⇔ ∀ t₁, t₂ ∈ r : t₁[X] = t₂[X] ⇒ t₁[Y] = t₂[Y]
burada:
  • Xbelirleyen (determinant) — nitelikler kümesi
  • Ybağımlı nitelikler kümesi
  • rtablonun (bağıntının) herhangi bir geçerli durumu
  • t₁, t₂tablonun herhangi iki satırı; t[X] — satırın X sütunlarındaki değerleri

X'te aynı olan iki satır Y'de de aynı olmak zorundadır.

(R₁ ∩ R₂) → R₁ ∨ (R₁ ∩ R₂) → R₂
burada:
  • R₁, R₂ayrıştırmadan elde edilen iki tablonun nitelik kümeleri (R₁ ∪ R₂ = R)
  • R₁ ∩ R₂ortak nitelikler — JOIN işleminin yapıldığı sütunlar

Koşul sağlanıyorsa ayrıştırma kayıpsızdır: R = R₁ ⋈ R₂.

İşlemler ve eş zamanlılık

Derse git
s = s₀ − q₂ ≠ s₀ − q₁ − q₂
burada:
  • s₀iki işlemin de okuduğu başlangıç stoğu
  • q₁, q₂T1 ve T2'nin sattığı miktarlar
  • sson yazan işlemin (T2) kaydettiği sonuç

Kayıp güncelleme: “oku → uygulamada hesapla → yaz” düzeninde T1'in satışı toplamdan düşer.

Sorgu optimizasyonu ve indeksler

Derse git
h = ⌈ log N ÷ log f ⌉
burada:
  • hağacın yüksekliği — bir anahtarı bulmak için okunan sayfa sayısı
  • Nindeksteki anahtar (satır) sayısı
  • fdallanma katsayısı — bir sayfaya sığan anahtar sayısı (genellikle yüzlerce)

Yükseklik satır sayısıyla logaritmik olarak artar: tablo 500 kat büyüdüğünde ağaca yalnızca bir düzey eklenir.

s = n ÷ N
burada:
  • skoşulun seçiciliği (0 ile 1 arasında)
  • nkoşula uyan satır sayısı
  • Ntablodaki tüm satırlar

Küçük s (az satır döndüren bir koşul) indeks için iyidir; s büyükse tam tarama daha ucuz olabilir.

Uygulamada PostgreSQL ve MySQL

Derse git

SQL ile veri analizi

Derse git
AOV = R ÷ Nₒ
burada:
  • AOVortalama sipariş değeri (average order value), manat
  • Rdönem geliri: Σ miktar · fiyat, manat
  • Nₒaynı dönemdeki sipariş sayısı
r = A ÷ C₀ · 100%
burada:
  • rkohortun elde tutma oranı
  • C₀kohort büyüklüğü — ilk dönemde gelen müşteriler
  • Asonraki dönemlerde yeniden sipariş veren müşteriler
cᵢ = nᵢ ÷ n₁ · 100%
burada:
  • cᵢi. aşamaya kadarki dönüşüm
  • nᵢi. aşamaya ulaşan müşteriler
  • n₁hunideki ilk aşama

Adım dönüşümü ise nᵢ ÷ nᵢ₋₁ · 100%'dür; “en çok nerede kaybediyoruz?” sorusunu cevaplar.

k = ⌈ p ÷ 100 · n ⌉
burada:
  • kyüzdeliğin sıralı listedeki konumu (1'den başlayarak)
  • pyüzdelik, örneğin 90
  • ndeğer sayısı

En yakın sıra yöntemi: p. yüzdelik, değerlerin en az %p'sini kapsayan en küçük değerdir.