SQL ડેવલપર્સ માટે ઇન્ટરવ્યુ પ્રશ્નો: સામાન્ય SQL ઇન્ટરવ્યુ પ્રશ્ન અને જવાબ- ભાગ 3

SQL માં, તમે કયા પ્રકારનો joins ઉપયોગ કર્યો છે અને તે કેવી રીતે કાર્ય કરે છે તે સમજાવો?

જવાબ:

  • INNER JOIN: બંને કોષ્ટકોમાંથી મેળ ખાતા ડેટા સાથે પંક્તિઓ પરત કરે છે.
  • LEFT JOIN: ડાબી કોષ્ટકમાંથી બધી પંક્તિઓ અને જમણી કોષ્ટકમાંથી મેળ ખાતી પંક્તિઓ પરત કરે છે.
  • RIGHT JOIN: જમણા કોષ્ટકમાંથી બધી પંક્તિઓ અને ડાબી કોષ્ટકમાંથી મેળ ખાતી પંક્તિઓ પરત કરે છે.
  • FULL JOIN: મેળ ન ખાતી પંક્તિઓ સહિત બંને કોષ્ટકોમાંથી બધી પંક્તિઓ પરત કરે છે.

 

એસક્યુએલમાં 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(ઓરેકલમાં) અથવા REGEXP_MATCHES(પોસ્ટગ્રેએસક્યુએલમાં) જેવા કાર્યો સાથે ઉપયોગમાં લેવાય છે.

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 ક્વેરી ઓપ્ટિમાઇઝેશન અને ડેટાબેઝ પરફોર્મન્સ ટ્યુનિંગ માટે અદ્યતન તકનીકો

જવાબ: એસક્યુએલ ક્વેરીઝ અને ડેટાબેઝ પ્રદર્શનને ઑપ્ટિમાઇઝ કરવા માટે, અમે તકનીકોનો ઉપયોગ કરી શકીએ છીએ જેમ કે:

  • વારંવાર પૂછાતા કૉલમ માટે અનુક્રમણિકાઓનો ઉપયોગ કરવો.
  • કાર્યક્ષમ ડેટા પુનઃપ્રાપ્તિ માટે ઑપ્ટિમાઇઝિંગ 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: ક્વેરી પરિણામમાં કૉલમનું છેલ્લું મૂલ્ય મેળવે છે.