Vprašanja za intervju za razvijalce SQL: pogosta vprašanja in odgovori na intervjuju SQL – 4. del

Pojasnite koncept ustvarjanja function in procedure v SQL ter prednosti njihove uporabe.

Odgovor: Function in procedure so v SQL poimenovani kodni bloki, ki jih je mogoče priklicati iz drugih poizvedb ali aplikacij.

  • Function: vrne vrednost in se pogosto uporablja za izračune in vračanje rezultatov.
  • Procedure: Ne vrne vrednosti in se uporablja za izvajanje nalog obdelave podatkov ali shranjevanja.

Prednosti uporabe funkcij in postopkov vključujejo:

  • Zmanjšanje podvajanja kode, kar olajša vzdrževanje in upravljanje kode.
  • Povečanje možnosti ponovne uporabe, kar omogoča ponovno uporabo kode na več mestih.
  • Izboljšanje zmogljivosti, saj se funkcije in postopki pogosto prevedejo enkrat in večkrat ponovno uporabijo.

 

Kako uporabljati RECURSIVE poizvedbe in COMMON TABLE EXPRESSION(CTE) v SQL.

Odgovor: RECURSIVE poizvedbe in COMMON TABLE EXPRESSION(CTE) se uporabljajo za obravnavanje rekurzivnih poizvedb in ponovno uporabo dela poizvedbe v SQL.

  • RECURSIVE: Omogoča izvajanje rekurzivnih poizvedb v bazi podatkov.
  • CTE: Deluje kot začasen niz rezultatov, ki razdeli poizvedbo na manjše, bolj obvladljive dele.
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;  

 

Kako ravnati s podvojenimi podatki in primeri neveljavnih podatkov v SQ

Odgovor: Za obravnavo podvojenih in neveljavnih podatkov v SQL lahko uporabimo stavke SQL, kot so omejitve DISTINCT, GROUP BY, HAVING in UNIQUE, da zagotovimo edinstvenost podatkov. Poleg tega lahko uporabimo izjave UPDATE ali DELETE za odpravo podvojenih ali neveljavnih zapisov.

 

Tukaj je prevod posebnih tipov podatkov v SQL Server

Các kiểu dữ liệu đặc biệt như XML, GEOGRAPHY, và GEOMETRY trong SQL Server được sử dụng để lưu trữ và làm việc với dữ liệu đặc thù và ph ức tạp. Dưới đây là mô tả về từng kiểu dữ liệu này:

XML:

  • Podatkovni tip XML v strežniku SQL Server omogoča shranjevanje in delo s podatki v formatu Extensible Markup Language.
  • Podatki XML lahko vsebujejo bogate strukture, kar omogoča shranjevanje dobro organiziranih in prilagodljivih informacij.
  • SQL Server ponuja funkcije in metode za manipulacijo podatkov XML, kar omogoča poizvedovanje, ustvarjanje in preoblikovanje podatkov XML.

GEOGRAPHY in GEOMETRY:

  • Podatkovni tipi GEOGRAPHY in GEOMETRY v strežniku SQL Server se uporabljajo za shranjevanje geografskih in geometrijskih informacij.
  • GEOGRAPHY se uporablja za predstavitev geografskih objektov, kot so točke, črte, regije in poligoni na zemeljski površini.
  • GEOMETRY se uporablja za predstavitev geometrijskih objektov, kot so točke, črte, regije in poligoni v ravnem prostoru.

Oba tipa podatkov podpirata posebne operacije in funkcije za poizvedovanje in analizo geografskih in geometrijskih podatkov.

 

Pojasnite funkcije in funkcije za obdelavo podatkov o datumu in času v SQL

Funkcije in funkcije za obdelavo podatkov o datumu in času v SQL se uporabljajo za manipulacijo in izvajanje nalog, povezanih z datumi in časi v bazi podatkov. Tukaj je podroben opis nekaterih pogostih funkcij in lastnosti:

DATEPART(): Ta funkcija se uporablja za ekstrahiranje določene komponente(npr. dan, mesec, leto, ura, minuta, sekunda) iz vrednosti datuma ali časa.

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

DATEDIFF(): Ta funkcija izračuna časovno razliko med dvema vrednostma datuma ali časa.

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

DATEADD(): Ta funkcija doda določeno število dni, mesecev, let ali časa vrednosti datuma ali časa.

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

GETDATE(): Ta funkcija vrne trenutni datum in čas sistema.

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

CONVERT(): Ta funkcija se uporablja za pretvorbo vrednosti datuma ali časa iz ene oblike v drugo.

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

FORMAT(): Ta funkcija se uporablja za oblikovanje vrednosti datuma ali časa v skladu z vnaprej določenim vzorcem.

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