Kuidas katsetada päringut, kui mul ei ole tabeleid, mille põhjal seda teha või ei ole õigust tabeleid luua? Ühise tabeli avaldise (common table expression) abil saab koostada päringus sisevaate (inline view), mille põhjal lause täita. Kõik see on üks näide. Järgnevalt katsetan numbrimärkidest koosnevate stringide sorteerimist.... PostgreSQLühine tabeli avaldisCTEVALUES lausepäringsisevaade 05.12.2025 09:26:14 | Erki Eessaar
Kumb on parem - kas trigeri käivitamise piiramine WHEN klausli abil või IF lausete kasutamine trigeri funktsioonis? Kõigepealt käsitlen jõudluse aspekti. PostgreSQL 18 (ja ka varasemate versioonide) puhul on teooria selline: WHEN klausel: Kontroll toimub enne trigeri protseduuri (funktsiooni) väljakutsumist. Kui tingimus on v... PostgreSQLtrigerWHEN klauselIF lausePL/pgSQLpgbenchjõudlushallatavusGemini 01.12.2025 14:44:40 | Erki Eessaar
Kas oleks võimalik (peaaegu) kogu andmebaasirakendus luua PostgreSQL baasil? Veidi provokatsioonilise pealkirjaga video: I replaced my entire tech stack with Postgres...Lühikokkuvõte mainitud vahenditest, millest palju... PostgreSQLtehnoloogiapinuJSONBpgvectorpg_cronpgApexPostgRESTveebirakendusedCYPEXPostgRESTpgvectorpgcryptoJSONBpg_cron 08.11.2025 15:53:09 | Erki Eessaar
Kuidas katsetada SQLis päringuid ilma, et mul oleks tabeleid, mille põhjal seda teha? Kasutades lauses ühiseid tabeli avaldisi (common table expression) on võimalik päringu kontekstis koostada tabel, mille põhjal päringut täita.Näide: Oletame, et ma tahan teada, kas tingimus pikkus NOT IN (1... cteühine tabeli avaldistestimineVALUESDB Fiddlevirtuaalne tabelSQL 13.06.2025 14:22:48 | Erki Eessaar
Kuidas SQLite korral realiseerida klassifikaatorite tabeleid, kus on kood ja nimetus? Koodi peaks sisestama inimkasutaja, mitte genereerima süsteem. Katsetasin seda koodi DB Fiddle keskkonnas. CREATE TABLE Tellimuse_seisundi_liik (tellimuse_seisundi_liik_kood INTEGER NOT NULL,... primaarvõtiesmasvõtiarvujada generaatorsurrogaatvõtiSQLiteklassifikaatorautomaatne väärtuskood 03.05.2025 11:26:47 | Erki Eessaar
Kuidas eemaldada SQL lauses stingi e sõne ümbert sulud, kui string peaks olema sulgudes? Andmebaasisüsteemid PostgreSQL ja Oracle pakuvad funktsiooni regexp_replace, mis võimaldab asendada stringis alamstringi, kasutades sealjuures regulaaravaldisi. Lause katsetamiseks saab kasutada regulaaravaldistekstitöötlusregexp_replaceSQLstringidPostgreSQLOracle 24.11.2024 14:48:07 | Erki Eessaar
Millistes SQL-andmebaasisüsteemides saab kasutada SQL standardis ettenähtud skeemi INFORMATION_SCHEMA, milles on süsteemikataloogi tabelite põhjal loodud vaated ja millistes ei saa? INFORMATION_SCHEMA on SQL standardis kirjeldatud skeem, mis sisaldab süsteemikataloogi tabelite põhjal loodud vaateid. Süsteemikataloogi ... INFORMATION_SCHEMAsüsteemikataloogSQL standardmetaandmedandmebaasisüsteemidporditavus 23.11.2024 12:44:03 | Erki Eessaar
Millistes SQL-andmebaasisüsteemides saab kasutada SELECT lauset, kus puudub FROM klausel ning millistes ei saa? Kasutasin katsetamiseks keskkondi DB Fiddle, SQL Fiddle ja SELECT lauseFROM klauselDual tabelSQL süntaksarvutusedandmebaasisüsteemidtestimine 23.11.2024 12:28:30 | Erki Eessaar
Kas CHECK kitsendustes saab kasutada mittedeterministlikke funktsioone? Deterministlik funktsioon tagastab samade argumentidega (sisendandmetega) alati samasuguse väärtuse. Mittedeterministlik funktsioon võib tagastada samade argumentidega erinevatel ajahetkedel erineva tulemuse. Mittedeterministlikud funktsioonid on nä... CHECK kitsendusdeterministlik funktsioonCURRENT_DATESQL standardandmete terviklikkusandmebaasisüsteemidretrospektiivne 22.11.2024 14:57:40 | Erki Eessaar
Kuidas kustutada korraga mitu tabeliga seotud kitsendust? See on hea näide, kuidas SQLi dialekt e mägimurrak erineb erinevates andmebaasisüsteemides detailide poolest. Järgnev katsetus tehti keskkondades DB Fi... kitsenduste kustutamineALTER TABLESQL süntaksDDLandmebaasisüsteemidporditavusDROP CONSTRAINT 14.11.2024 11:52:06 | Erki Eessaar