SQL डेवलपर्स के लिए साक्षात्कार प्रश्न: सामान्य SQL साक्षात्कार प्रश्नोत्तर- भाग 3

joins SQL में, आपने किस प्रकार का उपयोग किया है, और बताएं कि वे कैसे काम करते हैं?

उत्तर:

  • INNER JOIN: दोनों तालिकाओं से मेल खाते डेटा वाली पंक्तियाँ लौटाता है।
  • LEFT JOIN: बाईं तालिका से सभी पंक्तियाँ और दाईं तालिका से मेल खाती पंक्तियाँ लौटाता है।
  • RIGHT JOIN: दाहिनी तालिका से सभी पंक्तियाँ और बाईं तालिका से मेल खाती पंक्तियाँ लौटाता है।
  • FULL JOIN: गैर-मिलान वाली पंक्तियों सहित, दोनों तालिकाओं से सभी पंक्तियाँ लौटाता है।

 

SQL में ACID अवधारणाओं और लेनदेन प्रबंधन में उनकी भूमिका की व्याख्या करें

उत्तर: ACID का मतलब है Atomicity, Consistency, Isolation, Durability । SQL में लेनदेन प्रबंधन में ये आवश्यक गुण हैं:

  • Atomicity यह सुनिश्चित करता है कि लेनदेन या तो पूरी तरह से संसाधित हो गया है या बिल्कुल भी संसाधित नहीं हुआ है।
  • Consistency यह सुनिश्चित करता है कि डेटा को परिभाषित नियमों, बाधाओं और शर्तों का पालन करना चाहिए।
  • Isolation यह सुनिश्चित करता है कि समवर्ती लेनदेन एक-दूसरे के साथ हस्तक्षेप न करें।
  • Durability यह सुनिश्चित करता है कि एक बार लेनदेन पूरा हो जाने पर, डेटाबेस में परिवर्तन सुरक्षित और स्थायी रूप से सहेजे जाते हैं।

 

SQL में फ़ंक्शंस के बीच क्या अंतर है ROW_NUMBER(), RANK(), DENSE_RANK() ?

उत्तर: ROW_NUMBER(), RANK(), DENSE_RANK() सभी का उपयोग क्वेरी परिणाम में पंक्तियों को क्रमांकित करने के लिए किया जाता है, लेकिन उनमें निम्नलिखित अंतर हैं:

  • ROW_NUMBER(): डुप्लिकेट पर विचार किए बिना, क्वेरी परिणाम में पंक्तियों को निरंतर संख्याएँ निर्दिष्ट करता है।
  • RANK(): क्वेरी परिणाम में पंक्तियों को संख्याएँ निर्दिष्ट करता है और टाई होने की स्थिति में अगला नंबर छोड़ देता है।
  • DENSE_RANK(): क्वेरी परिणाम में पंक्तियों को संख्याएँ निर्दिष्ट करता है और संबंध होने की स्थिति में अगली संख्या को नहीं छोड़ता है।

 

SQL में कैसे उपयोग करें window functions, और एक उदाहरण प्रदान करें।

उत्तर: Window functions मुख्य क्वेरी के परिणाम को बदले बिना संबंधित पंक्तियों के सेट पर गणना करने की अनुमति दें। उदाहरण के लिए, हम रनिंग टोटल की गणना करने या परिणाम सेट के भीतर शीर्ष एन पंक्तियों को पुनः प्राप्त करने के लिए विंडो फ़ंक्शंस का उपयोग कर सकते हैं।

SELECT ProductID, UnitPrice,   
       SUM(UnitPrice) OVER(ORDER BY ProductID) AS RunningTotal  
FROM Products;  

 

पैटर्न मिलान के लिए SQL में रेगुलर एक्सप्रेशन का उपयोग कैसे करें

उत्तर: SQL में रेगुलर एक्सप्रेशन का उपयोग जटिल टेक्स्ट पैटर्न खोजों के लिए किया जाता है। इन्हें अक्सर LIKE ऑपरेटर या फ़ंक्शंस जैसे REGEXP_LIKE(Oracle में) या REGEXP_MATCHES(PostgreSQL में) के साथ उपयोग किया जाता है।

SELECT * FROM Employees WHERE LastName LIKE '%son%';

 

JSON डेटा के साथ काम करने के लिए SQL में JSON फ़ंक्शंस का उपयोग कैसे करें

उत्तर: SQL में JSON फ़ंक्शंस डेटाबेस में JSON प्रारूप में डेटा को क्वेरी करने, डालने, अपडेट करने और हटाने की अनुमति देते हैं।

उदाहरण के लिए, हम JSON गुणों में हेरफेर करने के लिए JSON_VALUE, JSON_QUERY, JSON_MODIFY(SQL सर्वर में), या ऑपरेटर जैसे ->, ->>, #>, #>>, आदि(PostgreSQL में) जैसे फ़ंक्शंस का उपयोग कर सकते हैं।

SELECT JSON_VALUE(CustomerInfo, '$.Name') AS CustomerName  
FROM Customers;  

 

SQL क्वेरी अनुकूलन और डेटाबेस प्रदर्शन ट्यूनिंग के लिए उन्नत तकनीकें

उत्तर: SQL क्वेरी और डेटाबेस प्रदर्शन को अनुकूलित करने के लिए, हम तकनीकों का उपयोग कर सकते हैं जैसे:

  • अक्सर पूछे जाने वाले कॉलम के लिए इंडेक्स का उपयोग करना।
  • कुशल डेटा पुनर्प्राप्ति के लिए अनुकूलन JOIN और WHERE खंड।
  • आवश्यकता पड़ने पर विंडो फ़ंक्शंस और पेजिनेशन का उपयोग करना।
  • SELECT केवल आवश्यक कॉलम पुनः प्राप्त करने के लिए * से बचना ।
  • कुछ मामलों में क्वेरी संकेतों का उपयोग करना।
  • डेटा सामान्यीकरण सुनिश्चित करना और डुप्लिकेट हटाना।
  • डेटाबेस को ट्रैक और फाइन-ट्यून करने के लिए प्रदर्शन निगरानी उपकरण नियोजित करना।

 

बताएं कि एसक्यूएल में SET ऑपरेशन का उपयोग कैसे करें (UNION, INTERSECT, EXCEPT)

उत्तर: SET ऑपरेशन का (UNION, INTERSECT, EXCEPT) उपयोग विभिन्न प्रश्नों के परिणाम सेटों को संयोजित करने और हेरफेर करने के लिए किया जाता है।

  • UNION: दो या दो से अधिक प्रश्नों के परिणामों को एक ही डेटा सेट में संयोजित करता है और डुप्लिकेट को हटा देता है।
  • INTERSECT: दोनों क्वेरी परिणाम सेट में दिखाई देने वाली पंक्तियाँ लौटाता है।
  • EXCEPT: वे पंक्तियाँ लौटाता है जो पहले क्वेरी परिणाम सेट में दिखाई देती हैं लेकिन दूसरे में नहीं।

 

LEAD, LAG, FIRST_VALUE, LAST_VALUE SQL जैसे क्वेरी फ़ंक्शंस का उपयोग कैसे करें

उत्तर: जैसे क्वेरी फ़ंक्शंस का LEAD, LAG, FIRST_VALUE, LAST_VALUE उपयोग उसी क्वेरी परिणाम के भीतर संबंधित पंक्तियों से मान पुनर्प्राप्त करने के लिए किया जाता है।

  • LEAD: क्वेरी परिणाम में अगली पंक्ति से एक कॉलम का मान प्राप्त करता है।
  • LAG: क्वेरी परिणाम में पिछली पंक्ति से एक कॉलम का मान प्राप्त करता है।
  • FIRST_VALUE: क्वेरी परिणाम में किसी कॉलम का पहला मान पुनर्प्राप्त करता है।
  • LAST_VALUE: क्वेरी परिणाम में किसी कॉलम का अंतिम मान पुनर्प्राप्त करता है।