SQL və verilənlər bazaları

SQL və verilənlər bazaları kursu — Prowid
Kursun müddəti
2 ay/ 16 dərs
Fərdi
Ayda 200 AZN
Qrupda
Ayda 150 AZN
Bütün kurs üçün ödəniş edərkən
15% endirim
Ödəniş hissə-hissə
50/50
Hər backend tətbiqin əsasında verilənlər bazası dayanır. Kursda relyasiyalı bazaları layihələndirməyi və PostgreSQL və MySQL-də SQL sorğuları yazmağı öyrənəcəksiniz.

Yeni qrup toplanır — yerinizi ayırmaq üçün müraciət edin

Və ya şəxsi kabinetdə özünüz öyrənin → abunə ilə ayda 30 AZN-dən

Kurs proqramı

Verilənlər bazalarına giriş: relyasiyalı və NoSQL bazalar
PostgreSQL, MySQL və MS SQL Server: fərqlər, quraşdırma, DBeaver
Cədvəllərin yaradılması: məlumat tipləri və məhdudiyyətlər (constraints)
CRUD: SELECT, INSERT, UPDATE, DELETE
Filtrləmə, çeşidləmə və səhifələmə: WHERE, ORDER BY, LIMIT
Aqreqat funksiyalar və qruplaşdırma: GROUP BY, HAVING
Cədvəllərin birləşdirilməsi: JOIN növləri
Alt sorğular (subqueries) və CTE
Pəncərə funksiyaları (window functions)
Bazanın layihələndirilməsi: ER-diaqram, normallaşdırma, əlaqələr
İndekslər və sorğuların optimallaşdırılması (EXPLAIN)
Tranzaksiyalar və ACID
View, stored procedure və trigger-lər
İstifadəçilər, giriş hüquqları və ehtiyat nüsxələr (backup)
Təhlükəsizlik: SQL injection və parametrləşdirilmiş sorğular
NoSQL ilə tanışlıq: MongoDB və Redis
Final layihə: onlayn mağaza üçün verilənlər bazası
Necə öyrədirik?

Tədris mərhələləri

01

Vebinar

Tələbələr dərsə canlı yayım vasitəsilə qoşulurlar. Hər dərsin sonunda keçirilən dərsin video formatı tələbələrə göndərilir.

02

Ev tapşırığı

Bütün tapşırıqlar vebinarda keçilən mövzuya əsaslanır. Ev tapşırığı materialın möhkəmləndirilməsinə və daha yaxşı anlaşılmasına kömək edir.

03

Mentorla iş

Təlimçi həm tədris zamanı, həm də dərsdən kənar vaxtlarda qrupla əlaqədə olur. Yaranan suallar dərhal cavablandırılır.

04

Portfolio

Kurs müddətində müxtəlif mövzulu bir neçə layihə hazırlanacaq. Bu, bacarıqlarınızı işəgötürənlərə nümayiş etdirməyə imkan yaradacaq.

Müstəqil öyrənmə

Şəxsi kabinetdə tam proqram

Nəzəriyyə, nümunələr və praktika ilə 122 mövzu. İlk 4 mövzu pulsuzdur, qalanları abunə ilə. Slaydlı və trenajorlu interaktiv dərslər: 108.

Giriş və iş mühiti8 mövzu
  1. Verilənlər bazası və VBİS nədir
  2. Relyasiyalı model: cədvəllər, sətirlər, sütunlar və açarlar
  3. SQL dili: standart, dialektlər və əmr qrupları
  4. SQLite ilə ilk sorğular: server quraşdırmadan
  5. PostgreSQL və MySQL-in Docker-də işə salınması
  6. psql və mysql konsol klientləri
  7. Qrafik klientlər: DBeaver, pgAdmin və MySQL Workbench
  8. Tədris bazası «Onlayn mağaza»: strukturu və yüklənməsi
Cədvəllər, məlumat tipləri və məhdudiyyətlər12 mövzu
  1. Verilənlər bazası, sxem və ilk cədvəlin yaradılması
  2. Ədədi tiplər: tam ədədlər, NUMERIC və sürüşən nöqtəli ədədlər
  3. Mətn tipləri: CHAR, VARCHAR, TEXT və kodlaşdırma
  4. Tarix və vaxt tipləri: DATE, TIMESTAMP, TIMESTAMPTZ və INTERVAL
  5. Xüsusi tiplər: BOOLEAN, ENUM, UUID və JSON
  6. Birincili açar və avtoinkrement: IDENTITY, SERIAL, AUTO_INCREMENT
  7. NOT NULL və DEFAULT: məcburi sahələr və standart dəyərlər
  8. UNIQUE: dəyərlərin unikallığı və kompozit məhdudiyyətlər
  9. CHECK: dəyərlərin baza səviyyəsində yoxlanılması
  10. Xarici açarlar: cədvəllərin əlaqələndirilməsi
  11. ON DELETE və ON UPDATE: CASCADE, SET NULL, RESTRICT
  12. ALTER TABLE: mövcud cədvəlin strukturunun dəyişdirilməsi
Məlumatların əlavə edilməsi, dəyişdirilməsi və silinməsi7 mövzu
  1. INSERT: bir və bir neçə sətrin əlavə edilməsi
  2. INSERT … SELECT, RETURNING və yeni id-nin alınması
  3. UPDATE: məlumatların təhlükəsiz dəyişdirilməsi
  4. DELETE və TRUNCATE: sətirlərin silinməsi
  5. UPSERT: INSERT … ON CONFLICT və ON DUPLICATE KEY UPDATE
  6. Məlumatların idxalı və ixracı: CSV, COPY və LOAD DATA
  7. Layihə: kitabxana bazası — sxem və məlumatlar
Məlumatların seçilməsi: SELECT, filtrləmə və çeşidləmə9 mövzu
  1. SELECT: sütunlar, ifadələr və alias-lar
  2. WHERE: müqayisə operatorları və AND, OR, NOT
  3. IN və BETWEEN: siyahılar və diapazonlar
  4. LIKE və ILIKE: şablon üzrə axtarış
  5. NULL və üçqiymətli məntiq: IS NULL və IS DISTINCT FROM
  6. ORDER BY: nəticələrin çeşidlənməsi
  7. LIMIT, OFFSET və səhifələmə
  8. DISTINCT və DISTINCT ON: təkrarsız sətirlər
  9. Layihə: onlayn mağaza kataloqu üçün sorğular
İfadələr və daxili funksiyalar7 mövzu
  1. Sorğularda ədədlər: hesab əməliyyatları, yuvarlaqlaşdırma və tip çevrilməsi
  2. Mətn funksiyaları: birləşdirmə, uzunluq, registr və alt sətirlər
  3. Requlyar ifadələr və mətnin təhlili
  4. Tarix funksiyaları: cari vaxt, hissələrin ayrılması və formatlaşdırma
  5. Tarix hesabı, intervallar və saat qurşaqları
  6. Şərti ifadələr: CASE, COALESCE və NULLIF
  7. Layihə: müştəri məlumatlarının təmizlənməsi və standartlaşdırılması
Aqreqasiya və qruplaşdırma6 mövzu
  1. Aqreqat funksiyalar: COUNT, SUM, AVG, MIN, MAX
  2. GROUP BY: sətirlərin qruplaşdırılması
  3. HAVING və sorğunun məntiqi icra ardıcıllığı
  4. Şərti aqreqasiya: FILTER və SUM(CASE …)
  5. STRING_AGG, GROUP_CONCAT və ARRAY_AGG: dəyərlərin siyahıya yığılması
  6. ROLLUP, CUBE və GROUPING SETS: aralıq yekunlar
Cədvəllərin birləşdirilməsi: JOIN9 mövzu
  1. INNER JOIN: əlaqəli cədvəllərin birləşdirilməsi
  2. LEFT JOIN: sol cədvəlin bütün sətirləri
  3. RIGHT JOIN və FULL OUTER JOIN
  4. CROSS JOIN və qeyri-bərabərlik şərti ilə birləşdirmə
  5. Self-join: cədvəlin özü ilə birləşdirilməsi
  6. Üç və daha çox cədvəlin birləşdirilməsi
  7. JOIN və GROUP BY: əlaqəli cədvəllər üzrə hesabatlar
  8. JOIN ilə UPDATE və DELETE
  9. Layihə: kitabxana bazasına sorğular
Alt sorğular, CTE və çoxluq əməliyyatları8 mövzu
  1. UNION, INTERSECT və EXCEPT: çoxluq əməliyyatları
  2. Skalyar və korrelyasiyalı alt sorğular
  3. IN, ANY və ALL ilə alt sorğular
  4. EXISTS və NOT EXISTS: əlaqəli sətirlərin yoxlanılması
  5. FROM hissəsində alt sorğular və LATERAL birləşmələr
  6. CTE: WITH ilə ümumi cədvəl ifadələri
  7. Rekursiv CTE: ağaclar, iyerarxiyalar və ardıcıllıqlar
  8. Layihə: satışlar üzrə analitik hesabat
Pəncərə funksiyaları8 mövzu
  1. Pəncərə funksiyaları: OVER və PARTITION BY
  2. ROW_NUMBER, RANK və DENSE_RANK: nömrələmə və reytinqlər
  3. LAG və LEAD: əvvəlki və növbəti sətirlə müqayisə
  4. Kumulyativ cəmlər və sürüşən ortalamalar
  5. Pəncərə çərçivələri: ROWS, RANGE, GROUPS və FIRST_VALUE/LAST_VALUE
  6. NTILE, PERCENT_RANK və persentillər: məlumatların seqmentləşdirilməsi
  7. Pəncərə funksiyaları ilə üsullar: seriyalar, boşluqlar və sessiyalar
  8. Layihə: pəncərə funksiyaları ilə mağaza analitikası
Verilənlər bazasının layihələndirilməsi9 mövzu
  1. ER-diaqramlar: mahiyyətlər, atributlar və əlaqələr
  2. Birə-çox və birə-bir əlaqələr
  3. Çoxa-çox əlaqə və aralıq cədvəllər
  4. Normallaşdırma: anomaliyalar və birinci normal forma
  5. İkinci və üçüncü normal formalar
  6. Denormallaşdırma: məlumatları nə vaxt qəsdən təkrarlamaq olar
  7. Sxemin layihələndirilməsində razılaşmalar və tipik həllər
  8. Sxem miqrasiyaları: versiyalaşdırma və təhlükəsiz dəyişikliklər
  9. Layihə: şərhlər və teqlərlə blog bazası
İndekslər və sorğuların optimallaşdırılması9 mövzu
  1. İndekslər necə işləyir: B-tree və CREATE INDEX
  2. Kompozit indekslər və sütunların ardıcıllığı
  3. Covering, partial və ifadə üzrə indekslər
  4. Digər indeks tipləri: Hash, GIN, GiST və BRIN
  5. İndeks nə vaxt lazım deyil və ya işləmir
  6. EXPLAIN: sorğu planını necə oxumalı
  7. EXPLAIN ANALYZE: real vaxt və statistika
  8. Sorğuların optimallaşdırılması: tipik üsullar və yavaş sorğuların axtarışı
  9. Layihə: mağazanın yavaş sorğularının sürətləndirilməsi
Tranzaksiyalar və paralel giriş7 mövzu
  1. Tranzaksiyalar: BEGIN, COMMIT, ROLLBACK və SAVEPOINT
  2. ACID: verilənlər bazası hansı zəmanətləri verir
  3. Paralel giriş anomaliyaları: dirty read, lost update və digərləri
  4. Təcrid səviyyələri və MVCC: PostgreSQL və MySQL
  5. Sətir kilidləri: SELECT FOR UPDATE, SKIP LOCKED və optimist kilidləmə
  6. Deadlock-lar və kilidlərin diaqnostikası
  7. Layihə: sifarişin rəsmiləşdirilməsi və anbar qalığının qorunması
View, funksiyalar, prosedurlar və trigger-lər6 mövzu
  1. View: saxlanılmış sorğular
  2. Materiallaşdırılmış view-lar
  3. İstifadəçi funksiyaları: CREATE FUNCTION
  4. Saxlanılan prosedurlar və PL/pgSQL: dəyişənlər, şərtlər, dövrlər
  5. Trigger-lər: məlumat dəyişəndə avtomatik əməliyyatlar
  6. Layihə: audit jurnalı və trigger-lərlə avtomatlaşdırma
JSON və tam mətnli axtarış5 mövzu
  1. JSON məlumatlarına sorğular: operatorlar, yollar və indekslər
  2. JSON-un qurulması və dəyişdirilməsi, JSON_TABLE
  3. PostgreSQL-də tam mətnli axtarış: tsvector və tsquery
  4. Qeyri-dəqiq axtarış: pg_trgm və MySQL-də FULLTEXT
  5. Layihə: məhsulların xüsusiyyətlərə görə axtarışı və filtrləri
Administrasiya: hüquqlar, ehtiyat nüsxələr və xidmət5 mövzu
  1. İstifadəçilər, rollar və hüquqlar: GRANT, REVOKE və RLS
  2. Ehtiyat nüsxə: pg_dump, pg_restore və mysqldump
  3. Fiziki ehtiyat nüsxələr, WAL və zaman nöqtəsinə bərpa
  4. Xidmət və monitorinq: VACUUM, statistika və aktiv sorğular
  5. Layihə: mağaza üçün giriş hüquqları və ehtiyat nüsxə
Tətbiqlərdə SQL, NoSQL və final layihə7 mövzu
  1. Koddan SQL: PHP PDO, Python və Node.js
  2. SQL injection: hücumlar necə qurulur
  3. SQL injection-dan müdafiə: parametrləşdirilmiş sorğular
  4. ORM və query builder, yoxsa təmiz SQL
  5. NoSQL: MongoDB, Redis və SQL nə vaxt ən yaxşı seçim deyil
  6. Final layihə, 1-ci hissə: onlayn mağazanın sxemi
  7. Final layihə, 2-ci hissə: hesabatlar, optimallaşdırma və təhlükəsizlik

Qrup və fərdi dərslər — müəllim, tapşırıqların yoxlanması və sertifikat. Abunəlik — öz tempinizdə materiallar, trenajorlar və irəliləyiş, müəllim rəyi olmadan.

SQL və verilənlər bazaları kursu — kursa yazılın

Formanı doldurun — növbəti qrupun başlama tarixini, dərs cədvəlini və ödəniş şərtlərini sizə bildirəcəyik. Və ya əvvəlcə pulsuz sınaq dərsinə gəlin.

WhatsApp