Andmebaaside ajaveeb

Mõtteid andmebaasidest, andmebaasisüsteemidest ja nende kavandamisest

Süsteemi genereeritud võtmeväärtustena saab kasutada nii täisarve kui universaalselt unikaalseid identifikaatoreid (uuid). Millised on kummagi lähenemise eelised ja puudused?

Süsteemi genereeritud võtmeväärtustena võib kasutada täisarve. PostgreSQLis saab selleks kasutada SMALLSERIAL/SERIAL/BIGSERIAL notatsiooni või määrata, et vastav veerg on identiteedi veerg. Genereeritud väärtus on täisarv, mis on kas 2 baiti (SMALLSE...


Millal kasutada SQLis tabelite ühendamist ja millal alampäringut?

SQL on keeleliselt liiane, mis tähendab, et aastate jooksul on SQL keelt täiendatud aina uute keelekonstruktsioonidega...


Kuidas arvutada SQLis protsenti nii, et ei peaks sama tabelit mitmekordselt lugema?

PostgreSQLis on andmebaas järgmise kontseptuaalse struktuuriga.[Facility_type]-1-------0..*-[Facility]-1---------------0..*-[Health_care_visit]Tabelis Facility_type on 5 rida.Tabelis Facility on 5_000 r...


Kuidas oleks PostgreSQLis töökiiruse mõttes kõige efektiivsem leida andmed ühest tabelist ja väljastada tulemuses ka tõeväärtus, mis leitakse teises tabelis olevate andmete põhjal?

Järgnev katsetus on tehtud PostgreSQL (16) põhjal.Andmebaasis on tabelid järgmise kontseptuaalse struktuuriga:[Person]-1----------0..*-[Health_care_visit]Tabelis Person on 70_000 rida.Tabelis Hea...


Kuidas piirata ridu, mille põhjal kokkuvõttefunktsioon arvutab tulemuse?

Oletame, et andmebaasi kontseptuaalne struktuur on selline:[Dept]-1---------0..*-[Emp]Iga osakond (Dept) on seotud null või rohkem töötajaga (Emp).Iga töötaja (Emp) on seotud täpselt ühe osakon...


Millal võiks olla kasu baastabeli arvutatud veergudest?

Arvutatud veeru puhul arvutatakse väljas olev väärtus teiste samas reas olevate väärtuste puhul ja salvestatakse kettale.


Mul on sellised ja sellised tabelid ning ma pean nende põhjal lahendama sellise ja sellise andmete otsimise ülesande. Milline oleks selle ülesande kõige parema jõudlusega lahendus?

Tuleb korraldada eksperiment ja erinevaid lahendusi katsetada. Kui Teil pole käepärast serverit, kus saate "liivakastis" mängida, siis isegi keskkonnas nagu DB Fiddle


Milliseid täiendusi SQL standardisse tegi SQL:2023 ja millised nendest võimalustest on ka PostgreSQL'is (kuni versioonini 16) olemas?

2023. aastal tuli peale pikka ootamist välja SQL standardi uus versioon - SQL:2023. Eelmine versioon oli SQL:2016 - nimes on viide aastale.


Miks mitte kasutada klassifikaatori tabeli, välisvõtme veeru ja sellel oleva välisvõtme kitsenduse asemel loendustüüpi veergu?

Sest see: vähendab lahenduse porditavust e ülekantavust, vähendab lahenduse paindlikkust,  suurendab keerukust, suurendab PostgreSQL näitel salvestusruumi kasutamist. Kirjutan järgnevalt se...


Teen otsingusüsteemi ja pean toetama võimalust, et üks või mitu otsingutingimust tuleb päringus AND'idega kokku siduda? Millisel viisil oleks seda efektiivne teha?

Teen katsetuse PostgreSQL (15) andmebaasis, millel on järgnev kontseptuaalne struktuur.[Person]-1-----------0..*-[Health_care_visit]-0..*----------------1-[Facility]TabelisHealth_care_visit - 1 miljon ridaPerson - ...