⊗ppPmDOChLT 383 of 447 menu

Верига от свързани таблици

Нека сега потребителите живеят в определени градове, а тези градове се намират в различни държави. В този случай за съхранението ще ни трябват вече три таблици: потребителите ще бъдат свързани с градове, а градовете - с държави. При това не ни ще трябва поле за връзка на потребителите с държави - защото потребителите така или иначе ще бъдат свързани с държави чрез връзката на градовете и държавите.

Нека погледнем нашите таблици. Таблицата с държави:

countries
id name
1 country1
2 country2

Таблицата с градове:

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

Таблицата с потребители ще остане непроменена:

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

Заявки

За да извлечем потребителите заедно с техните градове и държави, ще трябва да направим две съединения (joins): първото ще присъедини градовете към потребителите, а второто - държавите към градовете:

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

Практически задачи

Нека продуктите принадлежат на определена подкатегория, а подкатегориите принадлежат на определена категория. Описайте структурата за съхранение.

Напишете заявка, която извлича продуктите, заедно с техните подкатегории и категории.

Напишете заявка, която извлича подкатегориите заедно с техните категории.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне