SQL विकासकर्ताहरूको लागि अन्तर्वार्ता प्रश्नहरू: सामान्य SQL अन्तर्वार्ता प्रश्नोत्तर- भाग 3

SQL मा, तपाईंले कस्ता प्रकारहरू joins प्रयोग गर्नुभएको छ, र तिनीहरूले कसरी काम गर्छन् भनेर व्याख्या गर्नुहोस्?

उत्तर:

  • 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 मुख्य क्वेरीको नतिजा परिवर्तन नगरी सम्बन्धित पङ्क्तिहरूको सेटमा गणना गर्न अनुमति दिनुहोस्। उदाहरणका लागि, हामी चलिरहेको कुल गणना गर्न वा परिणाम सेट भित्र शीर्ष N पङ्क्तिहरू पुन: प्राप्त गर्न सञ्झ्याल प्रकार्यहरू प्रयोग गर्न सक्छौं।

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 आवश्यक स्तम्भहरू मात्र पुन: प्राप्त गर्न * बेवास्ता गर्दै ।
  • केही अवस्थामा क्वेरी संकेतहरू प्रयोग गर्दै।
  • डेटा सामान्यीकरण सुनिश्चित गर्दै र नक्कलहरू हटाउने।
  • डाटाबेस ट्र्याक र फाइन-ट्यून गर्न प्रदर्शन निगरानी उपकरणहरू प्रयोग गर्दै।

 

SQl मा 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: क्वेरी परिणाममा स्तम्भको अन्तिम मान पुन: प्राप्त गर्दछ।