Întrebări de interviu pentru dezvoltatorii SQL: Întrebări și răspunsuri comune la interviu SQL- Partea 4

Explicați conceptul de creare function și procedure în SQL și beneficiile utilizării acestora.

Răspuns: Function și procedure în SQL sunt denumite blocuri de cod care pot fi apelate din alte interogări sau aplicații.

  • Function: returnează o valoare și este adesea folosit pentru calcule și returnarea rezultatelor.
  • Procedure: Nu returnează o valoare și este utilizat pentru a efectua procesarea datelor sau sarcini de stocare.

Beneficiile utilizării funcțiilor și procedurilor includ:

  • Reducerea dublării codului, facilitând întreținerea și gestionarea codului.
  • Creșterea reutilizabilității, permițând reutilizarea codului în mai multe locuri.
  • Îmbunătățirea performanței, deoarece funcțiile și procedurile sunt adesea compilate o dată și reutilizate de mai multe ori.

 

Cum se utilizează RECURSIVE interogări și COMMON TABLE EXPRESSION(CTE) în SQL.

Răspuns: RECURSIVE interogările și COMMON TABLE EXPRESSION(CTE) sunt folosite pentru a gestiona interogări recursive și a reutiliza o parte a unei interogări în SQL.

  • RECURSIVE: Permite efectuarea de interogări recursive în baza de date.
  • CTE: Acționează ca un set de rezultate temporare, împărțind o interogare în părți mai mici, mai ușor de gestionat.
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;  

 

Cum să gestionați datele duplicate și cazurile de date nevalide în SQ

Răspuns: Pentru a gestiona datele duplicate și nevalide în SQL, putem folosi instrucțiuni SQL precum constrângeri DISTINCT, GROUP BY, HAVING și UNIQUE pentru a asigura unicitatea datelor. În plus, putem folosi UPDATE sau DELETE declarații pentru a elimina înregistrările duplicate sau nevalide.

 

Iată traducerea tipurilor speciale de date în SQL Server

Căc kiểu dữ liệu đặc biệt như XML, GEOGRAPHY și GEOMETRY din SQL Server ức tạp. Dưới đây là mô tả về từng kiểu dữ liệu này:

XML:

  • Tipul de date XML din SQL Server permite stocarea și lucrul cu date în format Extensible Markup Language.
  • Datele XML pot conține structuri bogate, permițând stocarea de informații bine organizate și flexibile.
  • SQL Server oferă funcții și metode de manipulare a datelor XML, permițând interogarea, crearea și transformarea datelor XML.

GEOGRAPHY Si GEOMETRY:

  • Tipurile de date GEOGRAPHY și GEOMETRY din SQL Server sunt folosite pentru a stoca informații geografice și geometrice.
  • GEOGRAPHY este folosit pentru a reprezenta obiecte geografice, cum ar fi puncte, linii, regiuni și poligoane de pe suprafața pământului.
  • GEOMETRY este folosit pentru a reprezenta obiecte geometrice, cum ar fi puncte, linii, regiuni și poligoane într-un spațiu plat.

Ambele tipuri de date acceptă operații și funcții speciale pentru interogarea și analiza datelor geografice și geometrice.

 

Explicați funcțiile și funcțiile pentru manipularea datelor de dată și oră în SQL

Funcțiile și caracteristicile pentru procesarea datelor de dată și oră în SQL sunt utilizate pentru a manipula și efectua sarcini legate de date și ore din baza de date. Iată o descriere detaliată a unor funcții și caracteristici comune:

DATEPART():Această funcție este utilizată pentru a extrage o anumită componentă(de exemplu, zi, lună, an, oră, minut, secundă) dintr-o valoare de dată sau oră.

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

DATEDIFF(): Această funcție calculează diferența de timp dintre două valori de dată sau oră.

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

DATEADD(): Această funcție adaugă un anumit număr de zile, luni, ani sau oră la o valoare de dată sau oră.

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

GETDATE(): Această funcție returnează data și ora curente ale sistemului.

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

CONVERT(): Această funcție este utilizată pentru a converti valorile datei sau orei dintr-un format în altul.

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

FORMAT(): Această funcție este utilizată pentru a formata valorile datei sau orei conform unui model predefinit.

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