SQL , ose Structured Query Language , është një gjuhë programimi e standardizuar që përdoret për menaxhimin e bazave të të dhënave relacionale dhe kryerjen e operacioneve të ndryshme mbi të dhënat në to. SQL është tepër i gjithanshëm, përdoret nga administratorët e bazës së të dhënave, analistët e të dhënave dhe zhvilluesit për të kërkuar, futur, përditësuar dhe fshirë të dhënat brenda një baze të dhënash.
Në zemër të SQL është koncepti i bazës së të dhënave . Një bazë të dhënash mund të mendohet si një koleksion i të dhënave të lidhura të organizuara në një mënyrë që lehtëson menaxhimin dhe rikthimin e të dhënave. Bazat e të dhënave kategorizohen kryesisht në dy lloje: bazat e të dhënave relacionale dhe bazat e të dhënave jo-relacionale . SQL përdoret kryesisht me bazat e të dhënave relacionale ku të dhënat ruhen në tabela që janë të lidhura me njëra-tjetrën përmes marrëdhënieve.
Ekzistojnë disa komanda thelbësore SQL që janë thelbësore për të punuar me bazat e të dhënave relacionale:
Një nga operacionet më të shpeshta të kryera në një bazë të dhënash është kërkimi i të dhënave duke përdorur deklaratën SELECT . Forma më e thjeshtë e deklaratës SELECT është si më poshtë:
ZGJIDH kolonën1, kolonën2 FROM Emri i tabelës;
Kjo komandë do të kthejë kolonat e specifikuara nga tabela e specifikuar. Për të zgjedhur të gjitha kolonat nga një tabelë, përdoret simboli yll (*):
SELECT * FROM Emri i tabelës;
Për të ngushtuar rezultatet e kthyera nga një deklaratë SELECT, klauzola WHERE mund të përdoret. Kjo klauzolë specifikon kushtet që duhet të plotësojnë të dhënat për t'u përzgjedhur. Për shembull:
SELECT * FROM punonjësit WHERE departamenti = 'Shitjet';
Kjo komandë do të kthejë të gjitha rreshtat në tabelën e punonjësve ku vlera e kolonës së departamentit është 'Shitjet'.
Në bazat e të dhënave relacionale, të dhënat shpesh shpërndahen nëpër tabela të shumta. Procesi i kombinimit të rreshtave nga dy ose më shumë tabela bazuar në një kolonë të lidhur midis tyre njihet si bashkim. Operacioni më i zakonshëm i bashkimit është BASHKIMI I BRENDSHËM , i cili kthen rreshtat kur ka të paktën një përputhje në të dyja tabelat.
Shembull:
SELECT punonjës.emri, departamenti.emri NGA punonjësit BASHKOHU I BRENDSHËM departamentet ON punonjësit.departamenti_id = departamentet.id;
Kjo komandë bashkon tabelat e punonjësve dhe departamenteve bazuar në kolonat e përputhjes së departamentit_id dhe id , përkatësisht, dhe zgjedh kolonat e emrave nga të dyja tabelat.
SQL lejon grupimin e rreshtave që kanë të njëjtat vlera në kolonat e specifikuara në të dhëna të grumbulluara, për shembull, duke numëruar numrin e punonjësve në çdo departament. Kjo arrihet duke përdorur deklaratën GROUP BY . Një pyetje shembull mund të duket kështu:
SELECT departament, COUNT(*) AS numri_e_punonjësve FROM punonjës GROUP BY departament;
Kjo komandë grupon rreshtat në tabelën e punonjësve sipas kolonës së departamentit dhe numëron numrin e punonjësve në secilin departament.
SQL ofron disa funksione agregate që funksionojnë në një grup vlerash dhe kthejnë një vlerë të vetme. Funksionet e përgjithshme të përdorura zakonisht përfshijnë:
Për shembull, për të gjetur pagën maksimale në tabelën e punonjësve , mund të përdorni pyetjen e mëposhtme:
SELECT MAX (paga) NGA punonjësit;
Një transaksion në SQL është një sekuencë e një ose më shumë komandave SQL që ekzekutohen si një njësi e vetme. Transaksionet sigurojnë integritetin e bazës së të dhënave duke iu përmbajtur vetive të ACID (Atomiciteti, Konsistenca, Izolimi, Qëndrueshmëria). Një transaksion bazë mund të përfshijë:
Për të përmirësuar performancën e kërkimeve dhe pyetjeve në një tabelë bazë të dhënash, SQL përdor indekset . Një indeks krijon një tabelë të brendshme kërkimi që sistemi i menaxhimit të bazës së të dhënave mund ta përdorë për të shpejtuar marrjen e të dhënave. E thënë thjesht, një indeks në një tabelë të bazës së të dhënave funksionon shumë si një indeks në një libër.
Krijimi i një indeksi mund të bëhet duke përdorur deklaratën CREATE INDEX , për shembull:
CREATE INDEX idx_employee_name ON punonjësit(emri);
Kjo komandë krijon një indeks në kolonën e emrit të tabelës së punonjësve , i cili mund të bëjë më efikas filtrimin ose renditjen e pyetjeve sipas emrit të punonjësit.
Kufizimet në SQL janë rregulla të aplikuara për të dhënat në tabela. Ato përdoren për të siguruar saktësinë dhe besueshmërinë e të dhënave brenda bazës së të dhënave. Kufizimet e zakonshme përfshijnë:
SQL është një mjet i fuqishëm për menaxhimin e bazave të të dhënave relacionale. Ai siguron një mënyrë të strukturuar për të kërkuar, futur, përditësuar dhe fshirë të dhënat, duke siguruar që përdoruesit të mund të ndërveprojnë në mënyrë efikase me bazën e të dhënave. Kuptimi i komandave bazë SQL, si të manipulohen të dhënat dhe tabelat, dhe si të përdoren veçori të avancuara si transaksionet dhe indekset, mund të përmirësojnë shumë menaxhimin dhe performancën e një baze të dhënash. Duke zotëruar këto koncepte, përdoruesit dhe zhvilluesit e bazës së të dhënave mund të sigurojnë integritetin, performancën dhe besueshmërinë e të dhënave dhe aplikacioneve të tyre.