शुरू करेंमुफ़्त में शुरू करें

Joins

अगर आप दोनों टेबल्स से कॉलम्स नहीं चुन रहे हैं या उनके बीच कोई परिभाषित रिलेशनशिप नहीं है, तब भी आप किसी टेबल पर .join() मेथड का उपयोग करके उसे दूसरी टेबल से जॉइन कर सकते हैं और अपनी क्वेरी से संबंधित अतिरिक्त डेटा प्राप्त कर सकते हैं. join() का पहला आर्ग्युमेंट वह टेबल ऑब्जेक्ट होता है जिसे आप जॉइन करना चाहते हैं, और दूसरा आर्ग्युमेंट वह कंडीशन जो बताती है कि टेबल्स का आपस में संबंध कैसे है. अंत में, आप सेलेक्ट स्टेटमेंट पर .select_from() मेथड का उपयोग करके जॉइन क्लॉज़ को रैप करते हैं. उदाहरण के लिए, वीडियो में, Jason ने निम्न कोड चलाया था जिसमें census टेबल को state_fact टेबल से ऐसे जॉइन किया गया कि census टेबल का state कॉलम, state_fact टेबल के name कॉलम से मेल खाता है.

stmt = stmt.select_from(
    census.join(
        state_fact, census.columns.state == 
        state_fact.columns.name)

यह अभ्यास पाठ्यक्रम का हिस्सा है

Python में Databases का परिचय

पाठ्यक्रम देखें

अभ्यास निर्देश

  • एक स्टेटमेंट बनाइए जो census और state_fact टेबल्स के ALL कॉलम्स सेलेक्ट करे. उदाहरण के लिए, दो टेबल्स employees और sales के ALL कॉलम्स चुनने के लिए आप लिखेंगे: stmt = select([employees, sales]).
  • stmt में select_from ऐड करें ताकि census टेबल को state_fact टेबल के साथ जॉइन किया जाए: census में state कॉलम और state_fact में name कॉलम के आधार पर.
  • स्टेटमेंट को एग्जीक्यूट करके पहला परिणाम प्राप्त करें और उसे result के रूप में सेव करें. यह कोड पहले से लिखा हुआ है.
  • उत्तर सबमिट करें: result ऑब्जेक्ट की keys पर लूप चलाइए और हर key तथा उसकी value प्रिंट कीजिए!

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Build a statement to select the census and state_fact tables: stmt
stmt = select([____, ____])

# Add a select_from clause that wraps a join for the census and state_fact
# tables where the census state column and state_fact name column match
stmt_join = stmt.select_from(
    ____(____, census.columns.____ == state_fact.columns.____))

# Execute the statement and get the first result: result
result = connection.execute(stmt_join).first()

# Loop over the keys in the result object and print the key and value
for key in result.keys():
    print(key, getattr(result, key))
कोड संपादित करें और चलाएँ