SQL டெவலப்பர்களுக்கான நேர்காணல் கேள்விகள்: பொதுவான SQL நேர்காணல் Q&A- பகுதி 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 இல்) அல்லது(PostgreSQL இல்) போன்ற செயல்பாடுகளுடன் பயன்படுத்தப்படுகின்றன 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 வினவல் தேர்வுமுறை மற்றும் தரவுத்தள செயல்திறன் ட்யூனிங்கிற்கான மேம்பட்ட நுட்பங்கள்

பதில்: 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: வினவல் முடிவில் உள்ள நெடுவரிசையின் கடைசி மதிப்பை மீட்டெடுக்கிறது.