Search
  • Guna Kaņepe

Iepazīstam SQL datubāzi



Kodētās ziņas jeb dati bieži tiek glabāti datubāzēs. Tas tāpēc, ka datubāzes dod būtiskas priekšrocības apjoma, ātruma, sadarbības un testēšanas ziņā. Datubāzēs kā programmēšanas valodu parasti izmanto SQL - Structured Query Language.


Izveidosim un pētīsim datubāzi, lietojot Microsoft SQL Server, Express editon!

Kā izrādās, tas ir bezmaksas un dabūjams microsoft vietnē:

https://www.microsoft.com/en-us/sql-server/sql-server-editions-express

Instalēšana ir ļoti vienkārša, vienīgi lietotājam ir jābūt ar administratora tiesībām. Pēc tam, kad instalēts pats serveris, tas piedāvā instalēt arī SQL Sever Management Studio – grafisku rīku darbam ar datubāzēm.


Nākošais solis ir iegūt kādu datu kopu, kuru mēs varētu pētīt.

Varam izmantot atvērtos datus no vietnes data.gov.lv, piemēram:

https://data.gov.lv/dati/lv/dataset/pvd-dp

Spiežam "Izpētīt" --> "Doties uz resursu"

(skat. attēlā!)

Saglabājam failu dp-csv.zip uz datora un atarhivējam to, iegūstot failus.

(skat. attēlā!)


Fails dp-dati.csv ir datu tabula, kura mums jāimportē uz SQL, pirms varam ar to strādāt.


Palaižam SQL Sever Management Studio.

Dialogā jau tiek piedāvāts savienoties ar SQLEXPRESS uz dotā datora.

Spiežam "Connect".

(skat. attēlā!)


Kreisajā malā ar peles labo pogu spiežam uz "Databases", izvēlamies "New Database".

(skat. attēlā!)


Ierakstam datubāzes nosaukumu "Opendata", un spiežam "OK".


Kreisajā malā tiek parādīta jaunizveidotā datubāze.

Spiežam ar labo peles pogu uz tās nosaukuma "Opendata" un izvēlamies "Tasks" --> "Import Flat File"...


Izvēlamies tikko iegūto failu dp-dati.csv un ierakstam tabulas nosaukumu – "produkti".

(skat. attēlā!)


Divas rezes spiežam "Next" -->, līdz nonākam sekojošā dialogā:

Šajā 'dialogā' jāieliek ķeksīši tajās vietās, kas atzīmētas ar dzeltenu. Respektīvi “Allow Nulls” ir jābūt atļautam visiem laukiem, izņemot pašu pirmo – "ProduktaID". Turpretim, "ProduktaID" vienīgais jāatzīmē kā “Primary Key”. (skat. attēlā!)


  • Dati bieži vien ir nekvalitatīvi un tajos iztrūkst vērtības. Trūkstošo vērtību vietā tiek ierakstīts speciāls apzīmējums "NULL".

  • Datu ierakstus katrā datubāzes tabulā ir nepieciešams unikāli identificēt. Tam kalpo lauks (vai vairāki), ko sauc par primāro atslēgu.


Spiežam: "Next" -->, "Finish", "Close".

Esam ieguvuši tabulu!


Spiežam podziņu "New Query":

(skat. attēlā!)


Atveras panelis, kurā beidzot varam rakstīt SQL komandas.


Datu analīzei praktiski pietiek ar vienu komandu - "SELECT", tomēr tā reizēm var būt ļoti sarežģīta.


Ierakstam tajā sekojošas komandas:

USE opendata

SELECT * FROM produkti


  • Komanda "USE opendata" pārslēdz tekošo datubāzi uz opendata (jo datubāzes var būt vairākas)

  • Komanda "SELECT * FROM" produkti ir tulkojama apmēram tā: “izvēlēties (SELECT) visus laukus (*) no tabulas produkti.

  • Lauki ir kolonnas, ieraksti ir rindas.


Tā kā nekādu ierobežojumu nav, tad rezultātā parādīsies visi tabulas ieraksti.


Nospiežam podziņu "Execute":

(skat. attēlā!)

Ekrāna apakšdaļā parādās komandas darbības rezultātā iegūtie dati.


Izpildīsim nākošo komandu:

SELECT DISTINCT "FasejumaVeids" FROM produkti.

Tulkojums: Izvēleties atšķirīgas (DISTINCT) lauka "FasejumaVeids" vērtības no tabulas produkti.


Rezultātam vajadzētu būt apmēram tādam:

(skat. attēlā!)

Visbeidzot izpildīsim sekojošu komandu:

SELECT COUNT(*) AS "Skaits", "FasejumaVeids" FROM produkti GROUP BY "FasejumaVeids"

Tulkojums:

1) izvēlēties ierakstu skaitu (COUNT) un nosaukt to par kolonnu "Skaits", kā arī izvēlēties kolonnu "FasejumaVeids";

2) ierakstus sagrupēt pēc kolonnas "FasejumaVeids" vērtībām;

3) skaits tiek aprēķināts katrai grupai.

(skat. attēlā!)

Mēs aplūkojām tikai vienu tabulu un dažas vienkāršas komandas, bet SQL iespējas ir vēl plašas. Var filtrēt, kārtot, veikt aprēķinus un sasaistīt vairākas tabulas.


Uzzinām un mācāmies kopā!



96 views

Valsts #196 ir platforma, kurā pievienoties ir aicināts ikviens, kurš vēlas pilnveidot savu digitālo identitāti un kļūt konkurētspējīgāks. Mēs nodrošinām instrumentus, zināšanas un līdzīgi domājošos, lai pārmaiņas varētu notikt jau tagad! 

© 2020valsts #196 

  • White Facebook Icon
  • White YouTube Icon