⊗ppPmDOChLT 383 of 447 menu

Ketjutettu taulukoiden yhteys

Oletetaan nyt, että käyttäjät asuvat tietyissä kaupungeissa, ja nämä kaupungit sijaitsevat eri maissa. Tällöin tallentamiseen tarvitsemme kolme taulukkoa: käyttäjät yhdistetään kaupunkeihin, ja kaupungit - maihin. Samalla emme tarvitse käyttäjien ja maiden välistä yhteyskenttää - sillä käyttäjät tulevat olemaan yhteydessä maihin kaupunkien ja maiden kautta.

Katsotaan taulukkojamme. Taulukko maiden kanssa:

countries
id name
1 country1
2 country2

Taulukko kaupungeilla:

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

Taulukko käyttäjillä pysyy muuttumattomana:

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

Kyselyt

Jotta voimme hakea käyttäjät yhdessä heidän kaupunkien ja maiden kanssa, meidän on tehtävä kaksi liitosta: ensimmäinen liittää kaupungit käyttäjiin, ja toinen - maat kaupunkeihin:

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

Käytännön tehtävät

Oletetaan, että tuotteet kuuluvat tiettyyn alalakentään, ja alalakentät kuuluvat tiettyyn pääluokkaan. Kuvaile tallennusrakenne.

Kirjoita kysely, joka hakee tuotteet, yhdessä niiden alalakenttien ja pääluokkien kanssa.

Kirjoita kysely, joka hakee alalakentät yhdessä niiden pääluokkien kanssa.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää