Düsturlar və asan yollar
SQL · 20
Bu kursdakı bütün düsturlar və yadda saxlamağın asan yolları bir səhifədə.
1Qabaqcıl SQLİrəli
Pəncərə funksiyaları
Dərsə keçCTE: WITH və rekursiv sorğular
Dərsə keçCASE və şərti məntiq
Dərsə keçMətn, tarix və riyazi funksiyalar
Dərsə keçÇoxluq əməliyyatları və mürəkkəb birləşmələr
Dərsə keç2Peşəkar səviyyədə verilənlər bazalarıUniversitet
Baza layihələndirmə və normallaşdırma
Dərsə keçX → Y ⇔ ∀ t₁, t₂ ∈ r : t₁[X] = t₂[X] ⇒ t₁[Y] = t₂[Y]
- Xmüəyyənedici (determinant) — atributlar çoxluğu
- Yasılı atributlar çoxluğu
- rcədvəlin (münasibətin) istənilən icazəli halı
- t₁, t₂cədvəlin istənilən iki sətri; t[X] — sətrin X sütunlarındakı qiymətlər
X-də üst-üstə düşən iki sətir Y-də də üst-üstə düşməlidir.
(R₁ ∩ R₂) → R₁ ∨ (R₁ ∩ R₂) → R₂
- R₁, R₂parçalamadan alınan iki cədvəlin atributlar çoxluqları (R₁ ∪ R₂ = R)
- R₁ ∩ R₂ortaq atributlar —
JOIN-in aparıldığı sütunlar
Şərt ödənirsə, parçalama itkisizdir: R = R₁ ⋈ R₂.
Tranzaksiyalar və paralel iş
Dərsə keçs = s₀ − q₂ ≠ s₀ − q₁ − q₂
- s₀hər iki tranzaksiyanın oxuduğu ilkin qalıq
- q₁, q₂T1 və T2-nin satdığı miqdar
- ssonuncu yazanın (T2) saxladığı nəticə
İtirilmiş yeniləmə: «oxu → proqramda hesabla → yaz» sxemində T1-in satışı cəmdən düşür.
Sorğuların optimallaşdırılması və indekslər
Dərsə keçh = ⌈ log N ÷ log f ⌉
- hağacın hündürlüyü — bir açarı tapmaq üçün oxunan səhifələrin sayı
- Nindeksdəki açarların (sətirlərin) sayı
- fbudaqlanma əmsalı — bir səhifəyə sığan açarların sayı (adətən yüzlərlə)
Hündürlük sətirlərin sayı ilə loqarifmik artır: cədvəl 500 dəfə böyüyəndə ağaca cəmi bir səviyyə əlavə olunur.
s = n ÷ N
- sşərtin seçiciliyi (0 ilə 1 arasında)
- nşərtə uyğun sətirlərin sayı
- Ncədvəldəki bütün sətirlər
Kiçik s (az sətir qaytaran şərt) indeks üçün yaxşıdır; s böyükdürsə, tam skan ucuz ola bilər.
Praktikada PostgreSQL və MySQL
Dərsə keçSQL ilə məlumat analizi
Dərsə keçAOV = R ÷ Nₒ
- AOVorta çek (average order value), manat
- Rdövr ərzində gəlir: Σ miqdar · qiymət, manat
- Nₒhəmin dövrdə sifarişlərin sayı
r = A ÷ C₀ · 100%
- rkohortun geri qayıtma faizi
- C₀kohortun ölçüsü — ilk dövrdə gələn müştərilər
- Asonrakı dövrlərdə yenidən sifariş verən müştərilər
cᵢ = nᵢ ÷ n₁ · 100%
- cᵢi-ci mərhələyə qədər konversiya
- nᵢi-ci mərhələyə çatan müştərilər
- n₁hunidəki ilk mərhələ
Addım konversiyası isə nᵢ ÷ nᵢ₋₁ · 100%-dir; o, «ən çox harada itiririk» sualına cavab verir.
k = ⌈ p ÷ 100 · n ⌉
- ksıralanmış siyahıda persentilin yeri (1-dən başlayaraq)
- ppersentil, məsələn, 90
- nqiymətlərin sayı
«Ən yaxın rütbə» üsulu: p-ci persentil qiymətlərin ən azı p%-ni əhatə edən ən kiçik qiymətdir.