⊗pyPmDOChLT 124 of 129 menu

Aheldatud tabelite ahel Pythonis

Oletame nüüd, et kasutajad elavad kindlates linnades ja need linnad asuvad erinevates riikides. Sellisel juhul vajame salvestamiseks juba kolme tabelit: kasutajad on seotud linnadega ja linnad on seotud riikidega. Samal ajal me ei vaja kasutajate ja riikide vahelist seose välja - sest kasutajad on niikuinii seotud riikidega läbi linnade ja riikide vahelise seose.

Vaatame meie tabeleid. Tabel riikidega:

countries
id name
1 country1
2 country2

Tabel linnadega:

cities
id name country_id
1 city1 1
2 city2 1
3 city3 2

Tabel kasutajatega jääb muutumatuks:

users
id name city_id
1 user1 1
2 user2 1
3 user3 2
4 user4 1
5 user5 3
6 user6 2

Päringud

Selleks, et saada kasutajad koos nende linnade ja riikidega, peame tegema kaks ühendust (JOIN): esimene ühendab linnad kasutajatega ja teine ühendab riigid linnadega:

SELECT users.name, cities.name as city_name, countries.name as country_name FROM users LEFT JOIN cities ON cities.id=users.city_id LEFT JOIN countries ON countries.id=cities.country_id

Praktilised ülesanded

Oletame, et tooted kuuluvad kindlasse alamkategooriasse ja alamkategooriad kuuluvad kindlasse kategooriasse. Kirjeldage salvestusstruktuuri.

Kirjutage päring, mis toob tooted, koos nende alamkategooriate ja kategooriatega.

Kirjutage päring, mis toob alamkategooriad koos nende kategooriatega.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu