Në SQL, çfarë llojesh joins
keni përdorur dhe shpjegoni se si funksionojnë ato?
Përgjigje:
INNER JOIN
: Kthen rreshtat me të dhëna që përputhen nga të dyja tabelat.LEFT JOIN
: Kthen të gjitha rreshtat nga tabela e majtë dhe rreshtat që përputhen nga tabela e djathtë.RIGHT JOIN
: Kthen të gjitha rreshtat nga tabela e djathtë dhe rreshtat që përputhen nga tabela e majtë.FULL JOIN
: Kthen të gjitha rreshtat nga të dyja tabelat, duke përfshirë rreshtat që nuk përputhen.
Shpjegoni konceptet e ACID në SQL dhe rolin e tyre në menaxhimin e transaksioneve
Përgjigje: ACID qëndron për Atomicity, Consistency, Isolation, Durability
. Këto janë vetitë thelbësore në menaxhimin e transaksioneve në SQL:
Atomicity
siguron që një transaksion ose të përpunohet plotësisht ose të mos përpunohet fare.Consistency
siguron që të dhënat duhet t'u përmbahen rregullave, kufizimeve dhe kushteve të përcaktuara.Isolation
siguron që transaksionet e njëkohshme të mos ndërhyjnë me njëra-tjetrën.Durability
siguron që pasi të përfundojë një transaksion, ndryshimet në bazën e të dhënave të ruhen në mënyrë të sigurt dhe të përhershme.
Cili është ndryshimi midis ROW_NUMBER(), RANK(), DENSE_RANK()
funksioneve në SQL?
Përgjigje: ROW_NUMBER(), RANK(), DENSE_RANK()
të gjitha përdoren për numërimin e rreshtave në një rezultat të pyetjes, por ato kanë ndryshimet e mëposhtme:
ROW_NUMBER()
: Cakton numra të vazhdueshëm për rreshtat në rezultatin e pyetjes, pa marrë parasysh dublikatat.RANK()
: Cakton numra në rreshtat në rezultatin e pyetjes dhe anashkalon numrin tjetër në rast të lidhjeve.DENSE_RANK()
: Cakton numra në rreshtat në rezultatin e pyetjes dhe nuk e anashkalon numrin tjetër në rast të lidhjeve.
Si të përdoret window functions
në SQL dhe jepni një shembull.
Përgjigje: Window functions
lejoni kryerjen e llogaritjeve në një grup rreshtash të lidhur pa ndryshuar rezultatin e pyetjes kryesore. Për shembull, ne mund të përdorim funksionet e dritares për të llogaritur totalet e ekzekutimit ose për të tërhequr N rreshtat e sipërm brenda një grupi rezultatesh.
SELECT ProductID, UnitPrice,
SUM(UnitPrice) OVER(ORDER BY ProductID) AS RunningTotal
FROM Products;
Si të përdorim shprehje të rregullta në SQL për përputhjen e modeleve
Përgjigje: Shprehjet e rregullta në SQL përdoren për kërkime komplekse të modeleve të tekstit. Ato përdoren shpesh me LIKE
operatorin ose funksione si REGEXP_LIKE
(në Oracle) ose REGEXP_MATCHES
(në PostgreSQL).
SELECT * FROM Employees WHERE LastName LIKE '%son%';
Si të përdorni funksionet JSON në SQL për të punuar me të dhënat JSON
Përgjigje: Funksionet JSON në SQL lejojnë kërkimin, futjen, përditësimin dhe fshirjen e të dhënave në formatin JSON në bazën e të dhënave.
Për shembull, ne mund të përdorim funksione si JSON_VALUE, JSON_QUERY, JSON_MODIFY(në SQL Server), ose operatorë si ->, ->>, #>, #>>, etj.(në PostgreSQL) për të manipuluar vetitë JSON.
SELECT JSON_VALUE(CustomerInfo, '$.Name') AS CustomerName
FROM Customers;
Teknika të avancuara për optimizimin e pyetjeve SQL dhe akordimin e performancës së bazës së të dhënave
Përgjigje: Për të optimizuar kërkesat e SQL dhe performancën e bazës së të dhënave, ne mund të përdorim teknika të tilla si:
- Përdorimi i indekseve për kolonat e kërkuara shpesh.
- Optimizimi
JOIN
dheWHERE
klauzola për rikthim efikas të të dhënave. - Përdorimi i funksioneve të dritares dhe faqezimit kur është e nevojshme.
- Shmangia
SELECT
* për të tërhequr vetëm kolonat e nevojshme. - Përdorimi i sugjerimeve për pyetje në disa raste.
- Sigurimi i normalizimit të të dhënave dhe heqja e dublikatave.
- Përdorimi i mjeteve të monitorimit të performancës për të gjurmuar dhe rregulluar mirë bazën e të dhënave.
Shpjegoni se si të përdorni SET
operacionet (UNION, INTERSECT, EXCEPT)
në SQl
Përgjigje: SET
operacionet (UNION, INTERSECT, EXCEPT)
përdoren për të kombinuar dhe manipuluar grupe rezultatesh të pyetjeve të ndryshme.
UNION
: Kombinon rezultatet e dy ose më shumë pyetjeve në një grup të vetëm të dhënash dhe heq dublikatat.INTERSECT
: Kthen rreshtat që shfaqen në të dy grupet e rezultateve të pyetjeve.EXCEPT
: Kthen rreshtat që shfaqen në grupin e rezultateve të pyetjes së parë, por jo në të dytin.
Si të përdorni funksionet e pyetjeve si LEAD, LAG, FIRST_VALUE, LAST_VALUE
në SQL
Përgjigje: Funksionet e pyetjes si LEAD, LAG, FIRST_VALUE, LAST_VALUE
përdoren për të tërhequr vlerat nga rreshtat e lidhur brenda të njëjtit rezultat të pyetjes.
LEAD
: Merr vlerën e një kolone nga rreshti tjetër në rezultatin e pyetjes.LAG
: Merr vlerën e një kolone nga rreshti i mëparshëm në rezultatin e pyetjes.FIRST_VALUE
: Merr vlerën e parë të një kolone në rezultatin e pyetjes.LAST_VALUE
: Merr vlerën e fundit të një kolone në rezultatin e pyetjes.