Pitakonan Wawancara kanggo Pangembang SQL: Tanya Jawab Wawancara SQL Umum- Bagian 3

Ing SQL, jinis apa sing joins sampeyan gunakake, lan nerangake cara kerjane?

Wangsulan:

  • INNER JOIN: Ngasilake baris kanthi data sing cocog saka loro tabel.
  • LEFT JOIN: Ngasilake kabeh larik saka meja kiwa lan larik sing cocog saka meja tengen.
  • RIGHT JOIN: Ngasilake kabeh larik saka meja tengen lan cocog larik saka meja kiwa.
  • FULL JOIN: Ngasilake kabeh larik saka loro tabel, kalebu larik sing ora cocog.

 

Nerangake konsep ACID ing SQL lan perane ing manajemen transaksi

Wangsulan: ACID singkatan saka Atomicity, Consistency, Isolation, Durability. Iki minangka properti penting ing manajemen transaksi ing SQL:

  • Atomicity njamin yen transaksi wis diproses kanthi lengkap utawa ora diproses.
  • Consistency mesthekake yen data kudu netepi aturan, watesan, lan kahanan sing ditemtokake.
  • Isolation mesthekake yen transaksi bebarengan ora ngganggu saben liyane.
  • Durability njamin yen transaksi wis rampung, owah-owahan ing database disimpen kanthi aman lan permanen.

 

Apa prabédan antarane ROW_NUMBER(), RANK(), DENSE_RANK() fungsi ing SQL?

Wangsulan: ROW_NUMBER(), RANK(), DENSE_RANK() Kabeh digunakake kanggo menehi nomer baris ing asil pitakon, nanging beda-beda ing ngisor iki:

  • ROW_NUMBER(): Nemtokake nomer terus-terusan menyang baris ing asil pitakon, tanpa nimbang duplikat.
  • RANK(): Nemtokake nomer menyang baris ing asil pitakon lan ngliwati nomer sabanjure yen ana hubungane.
  • DENSE_RANK(): Nemtokake nomer menyang baris ing asil pitakon lan ora ngliwati nomer sabanjure yen ana hubungane.

 

Carane nggunakake window functions ing SQL, lan menehi conto.

Wangsulan: Window functions Ngidini nindakake petungan ing sakumpulan baris sing gegandhengan tanpa ngganti asil pitakon utama. Contone, kita bisa nggunakake fungsi jendhela kanggo ngetung total mlaku utawa njupuk N baris ndhuwur ing set asil.

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

 

Cara nggunakake ekspresi reguler ing SQL kanggo cocog pola

Wangsulan: Ekspresi reguler ing SQL digunakake kanggo nggoleki pola teks sing kompleks. Asring digunakake karo LIKE operator utawa fungsi kaya REGEXP_LIKE(ing Oracle) utawa REGEXP_MATCHES(ing PostgreSQL).

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

 

Cara nggunakake fungsi JSON ing SQL kanggo nggarap data JSON

Wangsulan: Fungsi JSON ing SQL ngidini pitakon, nglebokake, nganyari, lan mbusak data ing format JSON ing basis data.

Contone, kita bisa nggunakake fungsi kaya JSON_VALUE, JSON_QUERY, JSON_MODIFY(ing SQL Server), utawa operator kaya ->, ->>, #>, #>>, lan sapiturute(ing PostgreSQL) kanggo ngapusi properti JSON.

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

 

Teknik lanjut kanggo optimasi query SQL lan tuning kinerja database

Wangsulan: Kanggo ngoptimalake pitakon SQL lan kinerja database, kita bisa nggunakake teknik kayata:

  • Nggunakake indeks kanggo kolom sing kerep ditakoni.
  • Ngoptimalake JOIN lan WHERE klausa kanggo njupuk data sing efisien.
  • Nggunakake fungsi jendhela lan pagination yen perlu.
  • Nyingkiri SELECT * kanggo njupuk mung kolom perlu.
  • Nggunakake pitunjuk pitakon ing sawetara kasus.
  • Njamin normalisasi data lan mbusak duplikat.
  • Nggunakake alat ngawasi kinerja kanggo nglacak lan nyetel database.

 

Nerangake carane nggunakake SET operasi (UNION, INTERSECT, EXCEPT) ing SQL

Wangsulan: SET operasi (UNION, INTERSECT, EXCEPT) digunakake kanggo nggabungake lan ngapusi set asil pitakon sing beda.

  • UNION: Nggabungake asil saka loro utawa luwih pitakon menyang set data siji lan mbusak duplikat.
  • INTERSECT: Ngasilake baris sing katon ing loro set asil query.
  • EXCEPT: Ngasilake baris sing katon ing set asil pitakon pisanan nanging ora ing urutan kapindho.

 

Cara nggunakake fungsi pitakon kaya LEAD, LAG, FIRST_VALUE, LAST_VALUE ing SQL

Wangsulan: Fungsi pitakon kaya LEAD, LAG, FIRST_VALUE, LAST_VALUE digunakake kanggo njupuk nilai saka baris sing ana gandhengane ing asil pitakon sing padha.

  • LEAD: Entuk nilai kolom saka baris sabanjure ing asil pitakon.
  • LAG: Entuk nilai kolom saka baris sadurunge ing asil pitakon.
  • FIRST_VALUE: Njupuk nilai pisanan saka kolom ing asil pitakonan.
  • LAST_VALUE: Nompo nilai pungkasan saka kolom ing asil pitakonan.