10. Tēma — Relāciju datubāzes un PostgreSQL

Par šo tēmu

Failu glabāšana ar JSON un CSV ir lieliska maziem projektiem, taču īstas lietotnes glabā datus relāciju datubāzē. Šajā tēmā Tu iepazīsi PostgreSQL — vienu no spēcīgākajām atvērtā koda datubāzēm pasaulē — un apgūsi SQL valodas pamatus.

Tu iemācīsies projektēt tabulas (datu tipi, primārās un ārējās atslēgas), rakstīt vaicājumus (CRUD), apvienot vairākas tabulas ar JOIN un savienot Python ar datubāzi, izmantojot psycopg2 bibliotēku.

Tēmas noslēgumā Tu izveidosi "Highscore datubāzi" — pilnvērtīgu serveri, kas saglabā jebkuras spēles rezultātus, ļauj atskatīties uz vēsturi un parāda TOP 10 sarakstu pēc filtriem (mēneša, dienas, spēles).

Tēmas saturs

10. tēmas špikeris

SQL pamatkomandas

CREATE TABLE speletaji (id SERIAL PRIMARY KEY, vards TEXT NOT NULL, punkti INTEGER);
INSERT INTO speletaji (vards, punkti) VALUES ('Anna', 120);
SELECT * FROM speletaji WHERE punkti > 100 ORDER BY punkti DESC LIMIT 10;
UPDATE speletaji SET punkti = 150 WHERE id = 1;
DELETE FROM speletaji WHERE punkti < 50;

JOIN tipi

TipsAtgriež
INNER JOINTikai sakritošās rindas no abām pusēm
LEFT JOINVisas rindas no kreisās + sakritošās no labās (NULL ja nav)
RIGHT JOINVisas no labās + sakritošās no kreisās
FULL OUTER JOINVisas no abām pusēm