SQL के प्रोग्रामर ज्ञान का परीक्षण करने के लिए प्रश्न क्या हैं? प्रश्न का उत्तर क्या है? और प्रश्न से संबंधित अवधारणा (ओं) को समझने के लिए समय के संदर्भ में एक सही उत्तर की कमी का क्या मतलब होगा?
GOOGLED: sql चुनौती
SQL के प्रोग्रामर ज्ञान का परीक्षण करने के लिए प्रश्न क्या हैं? प्रश्न का उत्तर क्या है? और प्रश्न से संबंधित अवधारणा (ओं) को समझने के लिए समय के संदर्भ में एक सही उत्तर की कमी का क्या मतलब होगा?
GOOGLED: sql चुनौती
जवाबों:
यह इस बात पर निर्भर करता है कि आप कितना मुश्किल चाहते हैं। इसके अलावा, मैं आपको जवाब देने से थोड़ा सावधान हूं क्योंकि अधिकांश एसक्यूएल समस्याओं को करने के लिए कई स्वीकार्य तरीके हैं और एसक्यूएल समस्याओं को मैला तरीके से हल करने के तरीके भी हैं जो अन्य मुद्दों का कारण बनेंगे। जवाब को "ग्रेडिंग" करने वाले व्यक्ति को निश्चित रूप से इसे अपने दम पर हल करने में सक्षम होना चाहिए।
उस ने कहा, यहाँ कुछ मैं अपने सिर के ऊपर से आया हूँ।
बेहद आसान स्तर:
स्तंभों के साथ कर्मचारियों की तालिका को देखते हुए, FirstName, Lastname, HireDate, और TerminationDate:
कंपनी के लिए अभी भी काम कर रहे सभी कर्मचारियों को वापस लाने के लिए एक क्वेरी लिखें , अंतिम नाम "स्मिथ" के साथ शुरू होने वाले अंतिम नाम के साथ काम करने वाले पहले नाम के बाद।
आसान स्तर
ऊपर दिए गए कर्मचारी तालिका को देखते हुए, साथ ही कॉलम एम्पिड और रिव्यूडेट के साथ एक नई तालिका "एनुअल रीव्यू" दिया गया है:
सभी कर्मचारियों को वापस करने के लिए एक क्वेरी लिखें, जिनकी कभी भी समीक्षा नहीं की गई है।
मध्यम स्तर ऊपर दिए गए कर्मचारी तालिका को देखते हुए, कंपनी के लिए अभी भी काम कर रहे सबसे कम और कम कार्यकाल वाले कर्मचारी के बीच अंतर (दिनों में) की गणना करने के लिए एक प्रश्न लिखें?
हार्ड लेवल
ऊपर दिए गए कर्मचारी टेबल को देखते हुए, सबसे लंबी अवधि (दिनों में) की गणना करने के लिए एक प्रश्न लिखें कि कंपनी किसी को काम पर रखे या बिना किसी को बताए चली गई है।
हार्डर लेवल
फिर उसी टेबलों का उपयोग करते हुए, एक क्वेरी लिखें जो प्रत्येक कर्मचारी को लौटाए और प्रत्येक पंक्ति / कर्मचारी में उन कर्मचारियों की सबसे बड़ी संख्या शामिल हो, जिन्होंने अपने कार्यकाल के दौरान किसी भी समय कंपनी के लिए काम किया था और पहली तारीख जो अधिकतम तक पहुँच गई थी। कर्सर का उपयोग नहीं करने के लिए अतिरिक्त अंक।
मैं केवल आम तौर पर डेटा विशेषज्ञों के लिए साक्षात्कार में बैठता हूं, इसलिए मेरे प्रश्न कठिन होते हैं। लेकिन एक बात मुझे किसी ऐसे व्यक्ति की आवश्यकता होगी जो एसक्यूएल लिख रहा हो उसे जॉइन का ज्ञान होता है और जब लेफ्ट ज्वाइन का उपयोग करना होता है। जो कोई भी यह नहीं समझता है कि डेटाबेस को किसी भी तरह से आकार या रूप में क्वेरी करने का कोई व्यवसाय नहीं है।
एक और बात मैं यह सुनिश्चित करूंगा कि वे यह समझें कि कैसे एक ग्रुप BY करना है और एग्रीगेट कार्यों का उपयोग करना है।
और UNION और UNION ALL के बीच के अंतर ने मेरी नौकरी पर बहुत सारे गरीब उम्मीदवारों को खत्म कर दिया है।
मैं पूछूंगा कि "आपको SQL क्वेरी में उपयोग किए जाने वाले उपयोगकर्ता से दिए गए इनपुट मानों को क्यों और कैसे साफ करना चाहिए?"
इस एसक्यूएल इंजेक्शन को रोकने के लिए की जरूरत है, और जवाब देने में सक्षम किया जा रहा है इस SQL सिंटैक्स और आदेश (जैसे के बारे में अच्छा ज्ञान की आवश्यकता है SELECT
, UPDATE
, DROP
, DELETE
, आदि) के साथ ही उन एक प्रश्न तोड़ने के लिए एसक्यूएल टिप्पणियों के उपयोग के द्वारा धोखा दिया जा सकता है और घातक उपयोगकर्ता क्या करना चाहते हैं उसे इंजेक्ट करें।
डेटाबेस प्रोग्रामर के लिए एक तकनीकी परीक्षण विकसित करने में मेरा हाथ था। प्रश्न वही थे जो मैं काफी बुनियादी मानता हूं: किसी दिए गए टेबल संरचना के लिए क्रिएट टेबल स्टेटमेंट लिखें; कुछ सरल प्रश्न करें; आदि।
अधिकांश नौकरी आवेदक जिन्होंने एसक्यूएल में खुद को विशेषज्ञ कहा, ने परीक्षा से किनारा कर लिया। एक ने कहा कि यद्यपि वह कई वर्षों से SQL डेवलपर था, फिर भी उसने कभी कोई रचना विवरण नहीं लिखा क्योंकि GUI ने उसके लिए ऐसा किया था।
हमारे पास अन्य तकनीकी परीक्षणों के समान अनुभव हैं। विंडोज समर्थन कर्मचारियों के लिए, कार्य "एक डोमेन उपयोगकर्ता बनाने," "एक प्रिंटर जोड़ें," "एक फाइल पर अनुमतियों को बदलने के समान हैं।" ज्यादातर लोग उन कार्यों को नहीं कर सकते, खासकर दबाव में। हम जानते हैं कि यदि आप साधारण सामान भी कर सकते हैं, तो आप शायद बहुत सक्षम हैं।
यदि आप अधिक खुले प्रश्न पूछना पसंद करते हैं: DATE, DATETIME ... डेटा प्रकारों के बारे में सामान्य प्रश्न पूछें। विभिन्न विक्रेता कार्यान्वयन / उत्पादों के बीच अंतर के बारे में पूछें। कमांड लाइन टूल, बल्क लोडर, सुंदर प्रिंटर के बारे में बात करें ... शायद आप साक्षात्कार के दौरान एक नई चाल सीख सकते हैं।