डेटा एनालिस्ट इंटरव्यू सवाल

inner join और left join में क्या फर्क है, और गलत वाला इस्तेमाल करने से कोई एनालिसिस चुपचाप कब बर्बाद हो जाती है?

इंटरव्यूअर असल में क्या परख रहा है, अपना जवाब कैसे स्ट्रक्चर करें, और एक बोला हुआ उदाहरण जिसे आप अपना सकते हैं।

छोटा जवाब

inner join सिर्फ वे पंक्तियां लौटाता है जिनका दोनों तरफ मेल हो। left join बाईं table की हर पंक्ति लौटाता है और साथ में दाईं तरफ के मिले हुए column, और जहां मेल न हो वहां null। चुपचाप होने वाला नुकसान तब आता है जब आप गिनती के लिए inner join इस्तेमाल करते हैं: जिन ग्राहकों का एक भी order नहीं है वे पूरी तरह गायब हो जाते हैं, तो आपकी conversion rate हकीकत से बेहतर दिखती है और कोई error भी नहीं आती।

इंटरव्यूअर यह क्यों पूछते हैं

join एनालिस्ट के दिन का सबसे ज्यादा इस्तेमाल होने वाला औजार है, और गलत चुनाव error के बजाय एक भरोसेमंद दिखता गलत नंबर देता है। इंटरव्यूअर सुनना चाहते हैं कि आप query लिखने से पहले सोचते हैं कि किस तरफ की पंक्तियां बचनी चाहिए, और कि आप नतीजे पर भरोसा करने के बजाय join से पहले और बाद में पंक्तियों की गिनती जांचते हैं।

अपना जवाब कैसे स्ट्रक्चर करें

  • दोनों join को इस आधार पर परिभाषित करें कि कौन सी पंक्तियां बचती हैं।
  • एक ठोस मामला दें जहां inner join शून्य वाले मामले छिपा देता है।
  • join से पहले और बाद में पंक्तियां गिनने का जिक्र करें।
  • बताएं कि WHERE में दाईं table पर filter लगाने से left join, inner join बन जाता है।

उदाहरण जवाब

बोला हुआ उदाहरण, पहले व्यक्ति में

inner सिर्फ मेल खाती पंक्तियां रखता है, left बाईं तरफ का सब कुछ रखता है और जहां दाईं तरफ कुछ नहीं वहां null भर देता है। मुझे इसकी इतनी परवाह इसलिए है कि गलत वाला error नहीं फेंकता, वह बस आपको एक आत्मविश्वास भरा गलत जवाब दे देता है। क्लासिक रूप यह है कि ग्राहकों को order से join करके गिना जाए। inner join के साथ जिसने कभी order नहीं किया वह गायब हो जाता है, तो अगर आप उसके बाद प्रति ग्राहक औसत order निकालें तो आपने चुपचाप वही पूरा हर वाला हिस्सा हटा दिया जिसकी आपको परवाह थी। इससे जुड़ा एक जाल मैं रिव्यू में जांचता हूं: अगर आप left join लिखें और फिर WHERE clause में दाईं table के किसी column पर filter लगाएं, तो null छन जाते हैं और आपने बिना जाने उसे वापस inner join बना दिया। वह filter ON clause में जाना चाहिए। मेरी आदत है base table की पंक्तियां गिनना, join चलाना, और दोबारा गिनना। अगर वे बढ़ीं, तो fan out है। अगर घटीं, तो मैंने वे पंक्तियां गंवाईं जो शायद मुझे चाहिए थीं।

जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।

देखें यह कैसे काम करता है

फॉलो-अप सवाल जिनकी उम्मीद रखें

  • WHERE में दाईं table पर filter लगाने से left join क्यों टूट जाता है?
  • जो पंक्तियां एक table में हैं पर दूसरी में नहीं, उन्हें आप कैसे ढूंढेंगे?
  • व्यवहार में full outer join किस काम आता है?

डेटा एनालिस्ट के और सवाल

आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।

मेरे सवाल प्रेडिक्ट करें

मुश्किल सवाल पूछे जाने से पहले उनकी रिहर्सल कीजिए

एक लाइव कोपायलट के साथ प्रैक्टिस कीजिए, फिर तैयार होकर अंदर जाइए। $29 Session Pass आपको इंटरव्यू पार करा देता है, न कोई सब्सक्रिप्शन, न कोई लॉक-इन।

GhostPilot पाएं