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

Nerangake konsep nggawe function lan procedure ing SQL lan keuntungan saka nggunakake.

Jawaban: Function lan procedure ing SQL dijenengi blok kode sing bisa diarani saka pitakon utawa aplikasi liyane.

  • Function: Ngasilake nilai lan asring digunakake kanggo petungan lan asil bali.
  • Procedure: Ora ngasilake nilai lan digunakake kanggo nindakake pangolahan data utawa tugas panyimpenan.

Keuntungan nggunakake fungsi lan prosedur kalebu:

  • Ngurangi duplikasi kode, dadi luwih gampang kanggo njaga lan ngatur kode.
  • Nambah panggunaan maneh, ngidini kode bisa digunakake maneh ing pirang-pirang panggonan.
  • Ngapikake kinerja, amarga fungsi lan prosedur asring dikompilasi sepisan lan digunakake kaping pirang-pirang.

 

Carane nggunakake RECURSIVE pitakon lan COMMON TABLE EXPRESSION(CTE) ing SQL.

Wangsulan: RECURSIVE pitakon lan COMMON TABLE EXPRESSION(CTE) digunakake kanggo nangani pitakon rekursif lan nggunakake maneh bagean saka pitakon ing SQL.

  • RECURSIVE: Ngidini nindakake pitakon rekursif ing basis data.
  • CTE: Tumindak minangka set asil sauntara, mecah pitakon dadi bagean sing luwih cilik lan bisa diatur.
WITH RECURSIVE RecursiveCTE(ID, ParentID, Level) AS( 
  SELECT ID, ParentID, 0 AS Level FROM Categories WHERE ParentID IS NULL  
  UNION ALL  
  SELECT C.ID, C.ParentID, Level + 1 FROM Categories C  
  INNER JOIN RecursiveCTE RC ON C.ParentID = RC.ID  
)  
SELECT * FROM RecursiveCTE;  

 

Cara nangani data duplikat lan kasus data sing ora bener ing SQ

Wangsulan: Kanggo nangani data duplikat lan ora sah ing SQL, kita bisa nggunakake statement SQL kaya watesan DISTINCT, GROUP BY, HAVING, lan UNIK kanggo njamin keunikan data. Kajaba iku, kita bisa nggunakake UPDATE utawa DELETE statements kanggo mbusak duplikat utawa ora bener cathetan.

 

Punika terjemahan jinis data khusus ing SQL Server

Sampeyan bisa ndeleng ing XML, GEOGRAPHY, lan GEOMETRI saka SQL Server, lan ing kene ức tạp. Sampeyan bisa ngomong babagan iki:

XML:

  • Jinis data XML ing SQL Server ngidini nyimpen lan nggarap data ing format Extensible Markup Language.
  • Data XML bisa ngemot struktur sing sugih, ngidini panyimpenan informasi sing apik lan fleksibel.
  • SQL Server nyedhiyakake fungsi lan cara kanggo ngapusi data XML, ngidini kanggo takon, nggawe, lan ngowahi data XML.

GEOGRAPHY lan GEOMETRY:

  • Jinis GEOGRAPHY lan GEOMETRY data ing SQL Server digunakake kanggo nyimpen informasi geografis lan geometris.
  • GEOGRAPHY digunakake kanggo makili obyek geografis kayata titik, garis, wilayah, lan poligon ing lumahing bumi.
  • GEOMETRY digunakake kanggo makili obyek geometris kayata titik, garis, wilayah, lan poligon ing papan sing rata.

Kaloro jinis data ndhukung operasi lan fungsi khusus kanggo pitakon lan nganalisa data geografis lan geometris.

 

Nerangake fungsi lan fungsi kanggo nangani data tanggal lan wektu ing SQL

Fungsi lan fitur kanggo ngolah data tanggal lan wektu ing SQL digunakake kanggo ngapusi lan nindakake tugas sing ana gandhengane karo tanggal lan wektu ing basis data. Mangkene katrangan rinci babagan sawetara fungsi lan fitur umum:

DATEPART(): Fungsi iki digunakake kanggo ngekstrak komponen tartamtu(contone, dina, sasi, taun, jam, menit, detik) saka nilai tanggal utawa wektu.

SELECT DATEPART(YEAR, '2023-07-19'); -- Result: 2023

DATEDIFF(): Fungsi iki ngétung prabédan wektu antarane rong tanggal utawa nilai wektu.

SELECT DATEDIFF(DAY, '2023-07-01', '2023-07-19'); -- Result: 18(number of days between two dates)

DATEADD(): Fungsi iki nambahake sawetara dina, sasi, taun, utawa wektu tartamtu menyang nilai tanggal utawa wektu.

SELECT DATEADD(DAY, 7, '2023-07-19'); -- Result: '2023-07-26'(adding 7 days)

GETDATE(): Fungsi iki ngasilake tanggal lan wektu saiki sistem.

SELECT GETDATE(); -- Result: '2023-07-19 12:34:56.789'

CONVERT(): Fungsi iki digunakake kanggo ngowahi nilai tanggal utawa wektu saka format siji menyang format liyane.

SELECT CONVERT(VARCHAR, '2023-07-19', 103); -- Result: '19/07/2023'

FORMAT(): Fungsi iki digunakake kanggo ngowahi format tanggal utawa wektu miturut pola sing wis ditemtokake.

SELECT FORMAT('2023-07-19', 'dd/MM/yyyy'); -- Result: '19/07/2023'