⊗pyPmDOFR 126 of 129 menu

Uhusiano wa Data wa Kifamilia katika Python

Wacha tuseme tunakabiliwa na changamoto ya kuhifadhi baba na wanawe. Wacha kila baba awe na uwezo wa kuwa na mwana mmoja tu, na mwana huyo kwa upande wake anaweza pia kuwa na mwana mmoja tu.

Inahitajika kutafakari jinsi tutakavyohifadhi data. Wazo la kwanza, linaweza kujia akilini - kutengeneza meza mbili: parents kwa wazazi na sons kwa wana. Kisha kuunganisha meza hizi na uga fulani: son_id au parent_id.

Hata hivyo, hili si wazo zuri sana - maana mtu yule yule anaweza kuwa wakati huo huo baba na mwana - na itabidi uhifadhiwe katika meza zote mbili, na hii haifai, inachukua nafasi zaidi na kwa urahisi husababisha makosa.

Chaguo bora zaidi - ni kuunganisha meza yenyewe na yenyewe: tutatengeneza meza users, ndani yake tutahifadhi watumiaji wote na kila mmoja tutamfanyia uga son_id, ambao ndani yake utahifadhiwa id wa mwana kutoka kwenye meza hii hii:

users
id name son_id
1 user1 2
2 user2 3
3 user3 null

Maswali

Sasa tujiandae kuandika swali (query) ambalo litamtoa mtumiaji pamoja na mwanawe.

Kwanza, tuchukue watumiaji tu:

SELECT * FROM users

Sasa tuwaunge (JOIN) kwa watumiaji wanaowao. Tutaunganisha meza yenyewe na yenyewe, kwa hivyo inahitajika kutaja jina jipya (aliasing):

LEFT JOIN users as sons

Sasa tunaweza kubainisha uhusiano kati ya meza kuu na ile iliyopewa jina jipya:

LEFT JOIN users as sons ON sons.id=users.son_id

Sasa tubainishe sehemu (fields):

SELECT users.name as user_name, sons.name as son_name

Tukusanye yote pamoja na tutapata swali lifuatalo:

SELECT users.name as user_name, sons.name as son_name FROM users LEFT JOIN users as sons ON sons.id=users.son_id

Kazi za Vitendo

Wacha tuseme tuna kategoria. Kila kategoria inaweza kuwa chini ya kategoria ya mzazi, na ile kategoria ya mzazi kwa upande wake iko chini ya kategoria yake ya mzazi na kadharika. Eleza muundo wa uhifadhi.

Andika swali ambalo litatoa kategoria pamoja na kategoria yake ya mzazi.

Andika swali ambalo litatoa kategoria pamoja na mzazi wake na mzazi wa mzazi wake (babu).

Andika swali ambalo litatoa kategoria pamoja na mzazi wake, mzazi wa mzazi wake (babu) na mzazi wa mzazi wa mzazi wake (kuku).

Kiswahili
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Tunatumia kuki kwa ajili ya uendeshaji wa tovuti, uchambuzi na ubinafsishaji. Usindikaji wa data unafanyika kulingana na Sera ya Faragha.
kubali yote sanidi kataa