⊗pyPmDOFR 126 of 129 menu

पायथन में डेटा के पारिवारिक संबंध

मान लीजिए कि हमारे सामने पिता और बेटों को संग्रहीत करने का कार्य है। मान लीजिए कि प्रत्येक पिता के पास केवल एक बेटा हो सकता है, और बेटा बदले में एक बेटा भी रख सकता है।

हमें यह सोचने की जरूरत है कि हम डेटा कैसे संग्रहीत करेंगे। पहला विचार, जो दिमाग में आ सकता है - दो तालिकाएँ बनाना: parents पिताओं के लिए और sons बेटों के लिए। फिर इन तालिकाओं को किसी फ़ील्ड से जोड़ें: son_id या parent_id

हालाँकि, यह विचार बहुत अच्छा नहीं है - क्योंकि एक ही व्यक्ति एक साथ पिता और बेटा दोनों हो सकता है - और उसे दोनों तालिकाओं में संग्रहीत करना होगा, और यह असुविधाजनक है, अधिक जगह लेता है और आसानी से त्रुटियों की ओर ले जाता है।

एक बेहतर विकल्प - तालिका को स्वयं से जोड़ना है: हम एक users तालिका बनाएंगे, इसमें सभी उपयोगकर्ताओं को संग्रहीत करेंगे और प्रत्येक के लिए एक son_id फ़ील्ड बनाएंगे, जिसमें इसी तालिका से बेटे का id संग्रहीत रहेगा:

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

क्वेरीज़

आइए अब एक क्वेरी लिखें, जो उपयोगकर्ता को उसके बेटे के साथ प्राप्त करेगी।

शुरुआत के लिए आइए बस उपयोगकर्ताओं को प्राप्त करें:

SELECT * FROM users

अब उपयोगकर्ताओं में उनके बेटों को जोड़ते हैं। हम तालिका को स्वयं से जोड़ेंगे, इसलिए हमें इसका पुनः नामकरण करने की आवश्यकता है:

LEFT JOIN users as sons

अब हम मुख्य तालिका और पुनः नामित तालिका के बीच संबंध निर्दिष्ट कर सकते हैं:

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

अब फ़ील्ड्स निर्दिष्ट करते हैं:

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

अब सब कुछ एक साथ रखते हैं और निम्नलिखित क्वेरी प्राप्त करते हैं:

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

व्यावहारिक कार्य

मान लीजिए कि हमारे पास श्रेणियाँ हैं। प्रत्येक श्रेणी एक मूल श्रेणी से संबंधित हो सकती है, और वह बदले में अपनी मूल श्रेणी से संबंधित हो सकती है और इसी तरह आगे भी। भंडारण संरचना का विवरण लिखें।

एक क्वेरी लिखें, जो श्रेणी को उसकी मूल श्रेणी के साथ प्राप्त करेगी।

एक क्वेरी लिखें, जो श्रेणी को उसके मूल और दादा-दादी के साथ प्राप्त करेगी।

एक क्वेरी लिखें, जो श्रेणी को उसके मूल, दादा-दादी और परदादा-परदादी के साथ प्राप्त करेगी।

हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें