PostgreSQL on avatud lähtekoodiga objektide-relatsioonide andmebaasisüsteem, millel on selles valdkonnas enam kui 30 aastat aktiivset arengut. Selles artiklis PostgreSQL algajatele mõeldud õpetuse kohta tutvustan teile andmebaaside erinevaid mõisteid ja PostgreSQL-is kasutatud käske.
Selles artiklis käsitletavad teemad jagunevad peamiselt nelja kategooriasse: DDL, DML, DCL ja TCL.
- The DDL Andmebaasi määratlemiseks kasutatakse käske (Data Definition Language). Näide: CREATE, DROP, ALTER, TRUNCATE, COMMENT, RENAME.
- The DML (Andmete manipuleerimise keel) käsud käsitlevad andmebaasis olevate andmetega manipuleerimist. Näide: SELECT, INSERT, UPDATE, DELETE.
- The DCL (Andmekontrolli keel) käsud käsitlevad andmebaasisüsteemi lubasid, õigusi ja muid juhtelemente. Näide: GRANT, INVOKE.
- The TCL [Transaction Control Language] käsud käsitlevad andmebaasi tehingut. Näide: BEGIN, COMMIT, ROLLBACK.
Lisaks käskudele käsitletakse selles artiklis järgmisi teemasid:
- Mis on PostgreSQL?
- Installige PostgreSQL Windowsi
- Eri tüüpi võtmed andmebaasis
- Andmebaasis kasutatavad piirangud
- Operaatorid
- Koondfunktsioonid
- Määra toimingud
- Pesastatud päringud
- Liitub
- Vaated
- Salvestatud protseduurid
- Käivitajad
- UUID andmetüüp
Mis on PostgreSQL? - PostgreSQLi õpetus
PostgreSQL on objektidega seotud andmebaaside süsteem, mis laiendab ja kasutab SQL-i keelt. See pärineb aastast 1986 ja seda on aktiivselt arendatud rohkem kui 30 aastat.
PostgreSQL-i omadused on järgmised:
- Andmetüübid: PostgreSQL toetab erinevat tüüpi andmetüüpe, nagu primitiivne, struktureeritud, dokument, geomeetria ja kohandused. See aitab kasutajal andmeid salvestada mis tahes vormingus.
- Andmete terviklikkus: Andmebaasis sisalduvate erinevate piirangute ja võtmete abil tagab PostgreSQL, et andmete terviklikkus oleks lihtsate ja keerukate andmebaaside jaoks rahuldatud.
- Performance: PostgreSQL pakub selliseid funktsioone nagu indekseerimine, mitmeversiooniline samaaegsuse kontroll, avaldiste JIT-komplikatsioonid, et tagada samaaegsuse ja jõudluse ajakohasus.
- Usaldusväärsus: Write Ahead Logging (WAL) ja replikatsiooni abil on PostgreSQL osutunud teatud aja jooksul üheks usaldusväärsemaks andmebaasisüsteemiks.
- Turvalisus: PostgreSQL pakub võimsaid mehhanisme, näiteks akinnistamine, a romama juurdepääsu kontrollsüsteemi to tagada, et ainult volitatud kasutajatel oleks juurdepääs andmebaasidele.
- Laiendatavus: PostgreSQL-l on mitmesugused laiendusedpakkuda täiendavaid funktsioone. Samuti on see laiendatavuse funktsioone skaleerinud salvestatud funktsioonide, protseduurikeele ja välismaiste andmepakkijatega.
Nüüd, kui teate, mis on PostgreSQL, lubage meil alustada PostgreSQL-i installimisega Windowsi.
Installige PostgreSQL Windowsi - PostgreSQLi õpetus
PostgreSQL-i installimiseks Windowsi peate järgima järgmisi samme:
Samm 1: Mine ametlik veebisait PostgreSQL ja seejärel valige operatsioonisüsteem, mille soovite alla laadida. Siin valin Windowsi.
2. samm: Kui operatsioonisüsteem on valitud, suunatakse teid lehele, kus peate installeri alla laadima. Selleks klõpsake valikul: Laadige alla installiprogramm. Vaadake allpool.
3. samm: Seejärel suunatakse teid edasi lehele, kus peate valige opsüsteemi põhjal installija versioon . Siin valin Windowsi 64-bitise versiooni 11.4. Vaadake allpool.
Ükskord sa tabas allalaadimist , näete automaatselt, et PostgreSQL-i laaditakse alla.
4. samm: Nüüd, kui fail on alla laaditud, topeltklõpsake failil selle avamiseks ja ekraanile ilmub viisard nagu allpool. Kliki Järgmine ja jätkake edasi.
4.1. Samm: Nüüd, määrake installikataloog . Jätan selle sellisena, nagu see on, ja klõpsan nuppu Järgmine nagu allpool.
Samm 4.2: Nüüd, valige komponendid, mida soovite installida ja seejärel klõpsake nuppu Järgmine . Siin valin kõik komponendid.
4.3. Samm: Järgmine valige kataloog, kuhu soovite andmeid salvestada . Siin ma jätan selle nii, nagu see on. Seejärel klõpsake nuppu Järgmine.
4.4. Samm: Järgmises dialoogiboksis, mis tuleb, peate seda tegema mainige superkasutaja parooli. Seejärel klõpsake nuppu Järgmine.
4.5. Samm: Järgmisena peate valige pordi number millises serveris peaks kuulama. Ma lasen sellel olla nii, nagu see on ja klõpsan siis edasi Järgmine.
4.6. Samm: Lõpuks valige lokaat mida uus andmebaasiklaster kasutab. Ma lasen sellel olla nii, nagu see on ja klõpsan siis edasi Järgmine .
4.7. Samm: Lõpuks klõpsake nuppu Järgmine viisardites, mis alustavad PostgreSQL-i installimist teie arvutisse.
Kui installimine on lõpule jõudnud, näete ekraanil allolevat dialoogiboksi. Kliki Lõpetama.
5. samm: Nüüd peate ühendage server andmebaasiga . Selleks tehke see avatud pgadmin, mis on PostgreSQLi ametlik GUI . Kui avate pgadmini, näete dialoogiboksi, mis küsib teilt parooli. Nii et mainige parool ja klõpsake nuppu OKEI.
Nüüd, kui peate olema installinud PostgreSQL-i, lubage meil alustada PostgreSQL-is kasutatavate käskudega.
Selles artiklis PostgreSQL algajatele mõeldud õpetuse kohta käsitlen näiteks allolevat andmebaasi, et näidata teile, kuidas käske kirjutada.
TeacherID | ÕpetajaNimi | Aadress | Linn | Postiindeks | Riik | Palk |
01 | Saurav | Gangnami tänav | Seoul | 06499 | Lõuna-Korea | 42000 |
02 | Preeti | Queens kai | selge jõgi | 560001 | Brasiilia | 45900 |
03 | Vinod | Kuningate tee | London | SW6 | Ühendkuningriik | 65000 |
04 | Akanksha | Mayo tee | Kolkata | 700069 | India | 23000 |
05 | Amit | MG tee | Bengaluru | 560001 | India | 30000 |
Niisiis, alustame kohe!
Andmemääratluse (DDL) käsud - PostgreSQLi õpetus
Artikli see osa koosneb nendest käsudest, mille saate oma andmebaasi määratleda. Käsud on järgmised:
LOE
Seda lauset kasutatakse skeemi, tabelite või indeksi loomiseks.
Avaldus CREATE SCHEMA
CREATE SCHEMA-lauset kasutatakse andmebaasi loomiseks või kõige sagedamini skeemina.
Süntaks:
Loo skeem skeemi_nimi
Näide:
LOE Skeemi õpetajad
Lause CREATE TABLE
Lauset CREATE TABLE kasutatakse andmebaasis uue tabeli loomiseks.
Süntaks:
CREATE TABLE tabeli_nimi (veeru1 andmetüüp, veeru2 andmetüüp, veeru3 andmetüüp, ....)
Näide:
LOE TABEL TeachersInfo (TeacherID int, TeacherName varchar (255), Address varchar (255), City varchar (255), PostalCode int, Country varchar (255), Palk int)
VANUS
Seda lauset kasutatakse piirangute või veergude lisamiseks, muutmiseks või kustutamiseks.
Avaldus ALTER TABLE
Lauset ALTER TABLE kasutatakse piirangute ja veergude lisamiseks, muutmiseks või kustutamiseks tabelist.
Süntaks:
ALTER TABLE tabeli_nimi LISA veeru_nimi andmetüüp
Näide:
ALTER TABEL TeachersInfo ADD DateOfBirth date
Tilk
Seda käsku kasutatakse andmebaasi, tabelite või veergude kustutamiseks.
DROP SCHEMA avaldus
Lauset DROP SCHEMA kasutatakse kogu skeemi tühistamiseks.
Süntaks:
DROP SCHEMA skeemi_nimi
Näide:
DROP SCHEMA õpetajad
Avaldus DROP TABLE
Lauset DROP TABLE kasutatakse kogu tabeli ja selle väärtuste kukutamiseks.
Süntaks:
DROP TABLE tabeli_nimi
Näide:
sorteeri c ++ massiiv
LENNU Laua TeachersInfo
TRUNCATE
Lauset TRUNCATE kasutatakse tabelis olevate andmete kustutamiseks, kuid tabelit ei kustutata.
Süntaks:
TRUNCATE TABLE tabeli_nimi
Näide:
TRUNCATE TABEL TeachersInfo
NIMETADA ümber
Lauset RENAME kasutatakse ühe või mitme tabeli või veeru ümbernimetamiseks.
Süntaks:
TABELI ALTER muutmine tabeli_nimi RENAME UUEKS_tabeli_nimi - tabeli ümbernimetamine
ALTER TABLE tabeli_nimi RENAME VEERG veeru_nimi TO new_column_name - veeru nime ümbernimetamine
Näide:
ALTER TABEL TeachersInfo NIMETAGE ümber InfoTeachersile ALTER TABLE InfoTeachers RENAME COLUMN dateofbirth TO TO dob
Enne kui ma selles artiklis PostgreSQL-i õpetajatele algajatele edasi lähen, lubage mul teile öelda erinevat tüüpi võtmed ja piirangud, mida peate andmebaasidega manipuleerimisel mainima. Klahvid ja piirangud aitavad teil tabeleid luua palju paremal viisil, kuna saate seostada iga tabelit teise tabeliga.
Erinevat tüüpi võtmed andmebaasis - PostgreSQLi õpetus
Peamiselt on 5 tüüpi võtmeid, mida saab andmebaasis mainida.
- Kandidaadi võti - Kandidaatvõti on kombinatsioon minimaalsest atribuutide komplektist, mis võimaldab unikaalselt tuvastada dupleksi. Igal seosel võib olla rohkem kui üks kandidaatvõti, kusjuures võti on lihtne või liitvõte.
- Super võti - Super Key on komplektatribuute, mis suudavad unikaalselt tuvastada dupleksi. Niisiis, kandidaatvõti on supervõti, kuid vastupidi pole tõsi.
- Esmane võti - Esmane võti on atribuutide kogum, mida saab kasutada iga duplikaadi kordumatuks tuvastamiseks. Niisiis, kui suhtes on 3-4 kandidaatvõtit, siis neist saab valida ühe peamiseks võtmeks.
- Alternatiivne võti - Kõiki teisi kandidaatide võtmeid peale esmase võtme nimetatakse alternatiivvõtmeks .
- Võõrvõti - Atribuut, mis saab olemasolevaid väärtusi võtta ainult mõne muu atribuudi väärtustena, on võõras võti atribuudile, millele see viitab.
Andmebaasis kasutatavad piirangud - PostgreSQLi õpetus
Piirangud, mida saate andmebaasides kasutada, on järgmised:
- EI NULL - Piirang NOT NULL tagab, et NULL-väärtust ei saa veergu salvestada
- UNIKAALNE - UNIKAALNE piirang tagab, et kõik veeru väärtused on erinevad
- KONTROLLIMA -Kontrolli piirang tagab, et kõik veeru väärtused vastavad konkreetsele tingimusele.
- DEFAULT - Vaikimisi piirang koosneb veeru vaikeväärtuste komplektist, kui väärtust pole määratud.
- INDEKS - Piirangut INDEX kasutatakse andmebaasi andmete väga kiireks loomiseks ja hankimiseks
Nüüd, kui teate DDL-i käske ning erinevat tüüpi võtmeid ja piiranguid, liigume järgmisesse jaotisesse, st Andmega manipuleerimise käsud.
Andmete manipuleerimise (DML) käsud - PostgreSQLi õpetus
Artikli see osa koosneb käskudest, mille abil saate oma andmebaasi manipuleerida. Käsud on järgmised:
Peale nende käskude on ka muid manipuleerivaid operaatoreid / funktsioone, näiteks:
- Aritmeetika-, bitti-, liit- ja võrdlusoperaatorid
- Loogilised operaatorid
- Koondfunktsioonid
- Erioperaatorid
- Määra toimingud
- Limit, Offset ja Fetch
MÄÄRAGE OTSINGU_ TEEL
Selle lause abil mainitakse, millist skeemi tuleb kõigi toimingute tegemiseks kasutada.
Süntaks:
MÄÄRA otsingu_tee skeemi_nimi
Näide:
Määra otsingu_tee õpetajatele
SISSE
Lauset INSERT kasutatakse uute kirjete lisamiseks tabelisse.
Süntaks:
Avalduse INSERT INTO saab kirjutada kahel viisil:
INSERT INTO table_name (veerg1, veerg2, veerg3, ...) VALUES (väärtus1, väärtus2, väärtus3, ...) - te ei pea mainima veerunimesid INSERT INTO table_name VALUES (väärtus1, väärtus2, väärtus3, ...)
Näide:
INSERT INTO TeachersInfo (õpetaja ID, õpetaja nimi, aadress, linn, sihtnumber, riik, palk) VÄÄRTUSED ('01', 'Saurav', 'Gangnam Street', 'Seoul', '06499', 'Lõuna-Korea', '42000') INSERT INTO TeachersInfo VALUES ('02', 'Preeti', 'Queens Quay', 'Rio Claro', '13500', 'Brazil', '45900')
UUENDAMINE
Avaldust UPDATE kasutatakse tabelis olemasolevate kirjete muutmiseks.
Süntaks:
UPDATE tabeli_nimi SET veerg1 = väärtus1, veerg2 = väärtus2, ... WHERE tingimus
Näide:
Uuenda TeachersInfo SET ÕpetajaNimi = 'Alfred', Linn = 'Frankfurt' WHERE TeacherID = '01'
KUSTUTA
Lauset DELETE kasutatakse olemasolevate kirjete kustutamiseks tabelis.
Süntaks:
Kustuta tingimus table_name WHERE
Näide:
KUSTUTA TeachersInfost WHERE TeacherName = 'Vinod'
VALI
Lauset SELECT kasutatakse andmebaasist andmete valimiseks ja tagastatud andmed salvestatakse tulemustabelisse, mida nimetatakse tulemuste komplekt .
Selle avalduse kasutamiseks on kaks võimalust:
Süntaks:
SELECT veerg1, veerg2, .. . FROM table_name - (*) kasutatakse kõigi valimiseks tabelist SELECT * FROM table_name
Näide:
SELECT õpetaja nimi, linn FROM TeachersInfo SELECT * FROM TeachersInfo
Lisaks individuaalsele SELECT märksõnale saate SELECT märksõna kasutada järgmiste lausetega:
Avaldus „SELECT DISTINCT”
Lauset SELECT DISTINCT kasutatakse ainult erinevate või erinevate väärtuste tagastamiseks. Niisiis, kui teil on duplikaatväärtustega tabel, saate selle lause abil eraldada väärtused.
Süntaks:
SELECT DISTINCT veerg1, veerg2, ... FROM tabeli_nimi
Näide:
VALI Riik TeachersInfost
Avaldus ORDER BY
Lauset ORDER BY kasutatakse soovitud tulemuste sortimiseks kasvavas või kahanevas järjekorras. Vaikimisi sorteeritakse tulemused kasvavas järjekorras. Kui soovite kirjeid sortida kahanevas järjekorras, peate kasutama DESC märksõna.
Süntaks:
VALI veerg1, veerg2, ... FROM tabeli_nimi TELLI veeru1, veeru2, ... ASC | DESC
Näide:
VALI * FROM TeachersInfo TELLIMINE riigi järgi SELECT * FROM TeachersInfo TELLIMINE riigi järgi DESC SELECT * FROM TeachersInfo TELLIMINE riigi, TeachersName VALI * FROM TeachersInfo TELLIMINE riigi ASC järgi, TeachersName DESC
„GROUP BY” avaldus
Seda lauset kasutatakse koondfunktsioonide abil tulemuskomplekti rühmitamiseks ühe või mitme veeru järgi.
Süntaks:
VALI veeru_nimi (d) FROM tabeli_nimi WHERE tingimus GRUPP veeru_nimi (d) ORDER BY veeru_nimi (d)
Näide:
VALI COUNT (õpetaja ID), riik FROM TeachersInfo RÜHM riigiti TELLIMUS MAAKONNA JÄRGI (õpetaja ID) DESC
Klausli avaldus
Kuna KUS märksõna ei saa kasutada koondfunktsioonidega, kasutusele võeti HAVING-klausel.
Süntaks:
VALI veeru_nimi (d) FROM tabeli_nimi WHERE tingimus GRUPP veeru_nimi (d), millel on tingimus TELLI veeru_nimi
Näide:
VALI ARV (COUNT) (õpetaja ID), riik õpetajast INFO RÜHM riigiti, kellel on arv (palk) & ampampampampgt 40000
Aritmeetika-, bitti-, liit- ja võrdlusoperaatorid - PostgreSQLi õpetus
Aritmeetilised, bituudsed, liit- ja võrdlusoperaatorid on järgmised:
LOOGILISED OPERAATORID
See operaatorite komplekt koosneb sellistest loogilistest operaatoritest nagu JA / VÕI / MITTE .
JA OPERAATOR
See operaator kuvab kirjed, mis vastavad kõigile AND-ga eraldatud tingimustele.
Süntaks:
SELECT veerg1, veerg2, ... FROM tabeli_nimi KUS tingimus1 ja tingimus2 JA tingimus3 ...
Näide:
VALI * FROM TeachersInfo WHERE Riik = 'India' JA linn = 'Lõuna-Korea'
VÕI KÄITAJA
See operaator kuvab need kirjed, mis vastavad kõigile OR-iga eraldatud tingimustele.
Süntaks:
VALI veerg1, veerg2, ... FROM tabeli_nimi KUS tingimus1 VÕI tingimus2 VÕI tingimus3 ...
Näide:
VALI * FROM TeachersInfo WHERE Riik = 'India' VÕI linn = 'Lõuna-Korea'
EI OLE OPERAATOR
Operaator NOT kuvab kirjet, kui tingimus (ed) pole tõesed.
Süntaks:
VALI veerg1, veerg2, ... FROM tabeli_nimi Kus MITTE tingimus
Näide:
VALI * FROM TeachersInfo WHERE NOT Riik = 'India' - võite ka kombineerida kõik ülaltoodud kolm operaatorit ja kirjutada päringu niimoodi: SELECT * FROM TeachersInfo WHERE NOT Riik = 'India' JA (linn = 'Bengaluru' VÕI linn = Kolkata)
Agregaatfunktsioonid - PostgreSQLi õpetus
Artikli järgmine jaotis sisaldab selliseid funktsioone nagu:
Funktsioon MIN ()
Funktsioon MIN tagastab tabeli valitud veeru väikseima väärtuse.
Süntaks:
VALI MIN (veeru_nimi) FROM tabeli_nimi KUS tingimus
Näide:
Valige MIN (palk) kui väikseim palk õpetajaltInfo
Funktsioon MAX ()
Funktsioon MAX tagastab tabeli valitud veeru suurima väärtuse.
Süntaks:
VALI MAX (veeru_nimi) FROM tabeli_nimi KUS tingimus
Näide:
VALI MAKS (palk) AS-i Suurim palk õpetajate infost
Funktsioon COUNT ()
Funktsioon COUNT tagastab määratud kriteeriumidele vastavate ridade arvu.
Süntaks:
VALI COUNT (veeru_nimi) FROM tabeli_nimi KUS tingimus
Näide:
VALI COUNT (TeacherID) TeachersInfost
Funktsioon AVG ()
Funktsioon AVG tagastab valitud numbriveeru keskmise väärtuse.
Süntaks:
VALI AVG (veeru_nimi) FROM tabeli_nimi KUS tingimus
Näide:
AVG (palk) VALI TeachersInfost
Funktsioon SUM ()
Funktsioon SUM tagastab teie valitud numbrilise veeru kogusumma.
Süntaks:
VALI SUMM (veeru_nimi) FROM tabeli_nimi KUS tingimus
Näide:
VALI SUMMA (palk) õpetajalt Teave
Erioperaatorid - PostgreSQLi õpetus
Artikli selles jaotises on järgmised operaatorid:
Operaatori vahel
Operaator BETWEEN on kaasav operaator, kes valib väärtused (numbrid, tekstid või kuupäevad) etteantud vahemikus.
Süntaks:
VALI veeru_nimi (d) FROM tabeli_nimi WHERE veeru_nimi VAHEL väärtus1 JA väärtus2
Näide:
VALIGE * FROM TeachersInfo'lt, KUS ON 30000 JA 45000 VAHELISED tasud
ON NULL operaator
Kuna võrdlusoperaatoritega (=,) ei ole võimalik NULL-i väärtusi testida, võime selle asemel kasutada IS-NULL ja EI-NULL-operaatoreid.
Süntaks:
- süntaks IS NULL VALI veeru_nimed FROM tabeli_nimi WHERE veeru_nimi ON TÜHIS - süntaks jaoks EI OLE NULL VALI veeru_nimed FROM tabeli_nimi WHERE veeru_nimi EI OLE NULL
Näide:
VALI ÕpetajaNimi FROM TeachersInfo KUS Aadress ON NULL VALI ÕpetajaNimi FROM TeachersInfo KUS Aadress EI NULL
NAGU Operaator
Operaatorit LIKE kasutatakse WHERE-klauslis tabeli veerus määratud mustri otsimiseks.
Allpool on kaks metamärke, mida kasutatakse koos operaatoriga LIKE:
% - protsendimärk tähistab nulli, ühte või mitut tähemärki
_ - alakriips tähistab ühte märki
Süntaks:
SELECT veerg1, veerg2, ... FROM tabeli_nimi KUS veerg LIKE muster
Näide:
VALI * FROM TeachersInfo WHERE õpetajanimele meeldib 'S%'
IN operaator
IN-operaator on lühike operaator ja seda kasutatakse mitme OR-i jaoks.
Süntaks:
VALI veeru_nimi (d) FROM tabeli_nimi WHERE veeru_nimi IN (väärtus1, väärtus2, ...)
Näide:
VALI * FROM TeachersInfo WHERE Riik IN ('Lõuna-Korea', 'India', 'Brasiilia')
MÄRGE: Pesastatud päringute kirjutamise ajal saate IN-i kasutada ka.
OLEMAS Operaator
Operaatori EXISTS abil testitakse, kas kirje on olemas või mitte.
Süntaks:
VALI veeru_nimi (d) FROM tabeli_nimi KUS ON (VALI veeru_nimi FROM tabeli_nimi WHERE tingimus)
Näide:
VALI ÕpetajaNimi FROM TeachersInfo WHERE OLEMAS (SELECT * FROM TeachersInfo WHERE TeacherID = 05 JA Palk & ampampampampgt 25000)
KÕIK operaator
Operaatorit ALL kasutatakse koos klausliga WHERE või HAVING ja see tagastab väärtuse true, kui kõik alampäringu väärtused vastavad tingimusele.
Süntaks:
VALI veeru_nimi (d) FROM tabeli_nimi WHERE veeru_nimi operaator KÕIK (VALI veeru_nimi FROM tabeli_nimi WHERE tingimus)
Näide:
VALI ÕpetajaNimi FROM TeachersInfo WHERE TeacherID = KÕIK (SELECT TeacherID FROM TeachersInfo WHERE Palk ja ampampampampgt 25000)
KÕIK operaatorid
Sarnaselt operaatoriga ALL kasutatakse ka operaatorit ANY koos klausliga WHERE või HAVING ja see tagastab tõese, kui mõni alampäringu väärtusest vastab tingimusele.
Süntaks:
VALI veeru_nimi (d) FROM tabeli_nimi KUS veeru_nimi operaator KÕIK (VALI veeru_nimi FROM tabeli_nimi WHERE tingimus)
Näide:
VALI ÕpetajaNimi FROM TeachersInfo WHERE TeacherID = ANY (VALI TeacherID FROM TeachersInfo WHERE palk VAHEL 32000 JA 45000)
Määra toimingud - PostgreSQLi õpetus
Peamiselt on kolm toimingut: LIIT , LÕPETA , Miinus . SQL-is määratud toimingute mõistmiseks võite viidata allolevale pildile. Vaadake allolevat pilti:
LIIT
Operaatorit UNION kasutatakse kahe või enama SELECT-lause tulemuste komplekti ühendamiseks.
Süntaks
SELECT column_name (s) tabelist1 UNION SELECT veeru_nimi (d) FROM tabelist 2
LÕPETA
INTERSECT-klauslit kasutatakse kahe ühendamiseksVALIja tagastab mõlema SELECT-lause andmekogumite ristmiku.
Süntaks
VALI veerg1, veerg2 .... tabelist_nimi WHERE tingimus INTERSECT SELECT veerg1, veerg2 .... tabelist_nimi WHERE tingimus
VÄLJA ARVATUD
Operaator EXCEPT tagastab need rühmad, mille tagastab esimene SELECT-toiming ja mida teine SELECT-toiming ei tagasta.
Süntaks
VALI veeru_nimi FROM tabeli_nimi VÄLJA VALI veeru_nimi FROM tabeli_nimi
Piiramine, nihe ja tõmbamine - PostgreSQLi õpetus
LIMIT
LIMIT-lause on harjunudhankige osa ridadest tabelis olevate täielike ridade hulgast.
Süntaks:
VALI veeru_nimi
FROM tabeli_nimi LIMIT number
Näide:
VALI * FROM TeachersInfo LIMIT 5-st
NIHE
Lause OFFSET jätab mainitud ridade arvu välja ja seejärel uuestitriivib ülejäänud rida.
Süntaks:
VALI veeru_nimi
FROM tabeli_nimi OFFSET number LIMIT number
Näide:
--Valige õpetajate infos 3 rida pärast 5. rida SELECT * FROM TeachersInfo OFFSET 5 LIMIT 3 - Valige kõik rida alates TeachersInfo SELECT * FROM TeachersInfo OFFSET 2
FETCH
Märksõna FETCH kasutatakse tabelist kirjete toomisekskasutades kursorit. Siin on kursorid järgmised:
- JÄRGMINE
- ENNE
- ESIMENE
- VIIMANE
- SUHTLIK krahv
- Absoluutne krahv
- Krahv
- KÕIK
- TAGASI
- TAGASI Count
- KÕIK TAGASI
- EDASI
- EDASI krahv
- EDASI KÕIKI
Süntaks:
FETCH-kurorname
Näide:
VALI * FROM TeachersInfo OFFSET 5 FETCH AINULT ESIMENE 5 RIDA
Pesastatud päringud - PostgreSQLi õpetus
Pesastatud päringud on need päringud, millel on väline päring ja sisemine päring. Põhimõtteliselt on alampäring päring, mis on sisestatud teise päringu nagu SELECT, INSERT, UPDATE või DELETE sisse. Vaadake allolevat pilti:
Niisiis, kui täidate selle päringu, näete Brasiiliast pärit õpetaja nime.
Liitub - PostgreSQLi õpetus
JOINS PostgreSQL-is kasutatakse kahe või enama tabeli ridade kombineerimiseks, tuginedes nende tabelite vahel seotud veerule. Järgmised ühenduste tüübid:
- Sisemine liitumine: INNER JOIN tagastab need kirjed, millel on mõlemas tabelis vastavad väärtused.
- VASAKLIITU: LEFT JOIN tagastab kirjed vasakult tabelilt ja ka need kirjed, mis vastavad tingimusele paremalt tabelilt.
- PAREMA LIITUMINE: RIGHT JOIN tagastab parempoolsest tabelist kirjed ja ka need kirjed, mis vastavad vasakpoolse tabeli tingimustele.
- TÄIELIK LIITUMINE: FULL JOIN tagastab kõik need kirjed, mille vasakus või paremas tabelis on vaste.
Vaatame allolevat tabelit peale tabeli TeachersInfo, et mõista liitumiste süntaksit.
SubjectID | TeacherID | SubjectName |
üks | 10 | Matemaatika |
2 | üksteist | Füüsika |
3 | 12 | Keemia |
SISSE LIITU
Süntaks:
VALI veeru_nimi (d) Tabelist1 INNER JOIN tabel2 SEES tabelis1.veeru_nimi = tabel2.veeru_nimi
Näide:
SELECT Subjects.SubjectID, TeachersInfo.TeacherName FROM Subjects INNER JOIN TeachersInfo ON Subjects.TeacherID = TeachersInfo.TeacherID
VASAK LIITU
Süntaks:
VALI veeru_nimi (d) Tabelist1 LEFT JOIN table2 ON table1.column_name = table2.column_name
Näide:
SELECT TeachersInfo.TeacherName, Subjects.SubjectID FROM TeachersInfo LEFT JOIN subjektid saidil TeachersInfo.TeacherID = Subjects.TeacherID TELLIMUS TeachersInfo.TeacherName
PAREMA LIITUMINE
Süntaks:
VALI veeru_nimi (d) Tabelist1 Parempoolne liitumine table2 ON table1.column_name = table2.column_name
Näide:
SELECT Subjects.SubjectID FROM Subjektidest ÕIGE LIITUMINE TeachersInfo ON Subjects.SubjectID = TeachersInfo.TeacherID ORDER BY Subjects.SubjectID
TÄIELIK LIITUMINE
Süntaks:
VALI veeru_nimi (d) Tabelist1 FULL OUTER JOIN tabel 2 sees table1.column_name = table2.column_name
Näide:
VALIGE TeachersInfo.TeacherName, Subjects.SubjectID FROM TeachersInfo FULL OUTER JOIN-i ained ON TeachersInfo.TeacherID = Subjects.SubjectID-i tellimus TeachersInfo.TeacherName
Nüüd, järgmisena selles artiklis, arutlenVaated,Salvestatud protseduuridjaKäivitajad.
Vaated - PostgreSQLi õpetus
Vaade on üks tabel, mis on tuletatud teistest tabelitest. Niisiis, vaade sisaldab reaalse tabeliga sarnaseid ridu ja veerge ning sellel on väljad ühest või mitmest tabelist.
Lause CREATE VIEW
Lauset CREATE VIEW kasutatakse olemasolevast tabelist vaate loomiseks.
Süntaks
CREATE VIEW view_name AS SELECT veerg1, veerg2, ..., veergN FROM tabeli_nimi tingimus
Näide
LOE VAADE õpetajate_vaade VALIGE ÕpetajaNimi, Õpetaja ID õpetajaltInfo WHERE City = 'Bengaluru'
Avaldus „DROP VIEW”
DROP VIEW-lauset kasutatakse vaate kustutamiseks.
Süntaks
VAHENDI VAADE vaatenimi
Näide
DROP VIEW õpetajate_vaade
PostgreSQLi õpetus algajatele: Salvestatud protseduurid
Salvestatud protseduurid on koodilõigud, mida saab salvestada ja uuesti kasutada.
Süntaks
LOE MENETLUS protseduuri_nimi
LANGUAGE lang_nimi
Näide
--Looge kaks tabelit b1) $$ CALL sisesta_andmed (4, 5)
T rigers - PostgreSQLi õpetus
Trigerid on SQL-i lausete kogum, mis on salvestatud andmebaasikataloogi. Need laused täidetakse alati, kui juhtub mõni tabeliga seotud sündmus. Niisiis, a päästik saab kasutada ka ENNE või PÄRAST andmeid muudab SISSE , UUENDAMINE või KUSTUTA avaldus.
Süntaks
CREATE TRIGGERi päästiku_nimi [ENNE | PÄRAST | INSTEAD OF] sündmuse_nimi SEES tabeli_nimi [- Mainige loogikat siin]
Näide
--CREATE TRIGGER CREATE TRIGGER example_trigger PÄRAST PÄRAST TeachersInfosse sisestamist
Andmekontrolli (DCL) käsud - PostgreSQLi õpetus
See jaotis koosneb käskudest, mida kasutatakse andmebaasi õiguste juhtimiseks. Käsud on järgmised:
GRANT
GRANT-käsku kasutatakse skeemi kasutajale juurdepääsuõiguste või muude privileegide pakkumiseks.
Süntaks:
GRANT privileegid objekti kasutajale
Näide:
TOETAGE LISA ÕPETAJATE INFOT AVALIKULE
TÜHISTA
Käsku REVOKE kasutatakse GRANT-käsu abil antud kasutaja juurdepääsuõiguste tühistamiseks.
Süntaks:
TÕSTA kasutajalt objekti õigused
Näide:
TÜHISTA KASUTAJATE TEAVE PUBLIKUST
Nüüd liigume selle artikli viimase jaotise juurde, st TCL-i käsud.
Tehingu juhtimise (TCL) käsud - PostgreSQLi õpetus
Alusta
Tehingu alustamiseks kasutatakse käsku BEGIN TRANSACTION.
Süntaks:
Alusta
TEHINGUTE ALUSTAMINE
Näide:
HAKKA KUSTUTAMA * TeachersInfost KOHAL Palk = 65000
KOHUSTUS
Käsu COMMIT salvestab kõik tehingud andmebaasi alates viimasest käsust COMMIT või ROLLBACK.
Süntaks:
KOHUSTUS
Näide:
KUSTUTA * FROM TeachersInfost KOHAL Palk = 65000 KOMMENT
ROLLBACK
Käsku ROLLBACK kasutatakse tehingute tagasivõtmiseks alates viimase käsu COMMIT või ROLLBACK väljaandmisest.
Süntaks:
ROLLBACK
Näide:
KUSTUTA * TeachersInfost KOHAL Palk = 65000 ROLLBACK
SAVEPOINT
Käsk SAVEPOINTmääratleb uue salvestuspunkti praeguses tehingus.
Süntaks:
SAVEPOINT savepoint_name - süntaks SAVEPOINTi salvestamiseks ROLLBACK TO savepoint_name - süntaks SAVEPOINT-i tagasi liikumiseks
Näide:
SAVEPOINT SP1 KUSTUTA TeachersInfost KUHU Tasud = 65000 SAVEPOINT SP2
VABASTAGE SAVEPOINT
Käsku RELEASE SAVEPOINT kasutatakse teie loodud SAVEPOINT eemaldamiseks.
Süntaks:
RELEASE SAVEPOINT savepunkti_nimi
Näide:
SAVEPOINT SP2 VABASTAMINE
TEHA TEHING
Käsk SET TRANSACTION määrab praeguse tehingu omadused.
Süntaks:
MÄÄRAGE TEHING tehingu_režiim
UUID andmetüüp - PostgreSQLi õpetus
UUID andmetüüp salvestab universaalselt unikaalsed identifikaatorid (UUID), mille pikkus on 128 baiti. See on kirjutatud väikeste tähtedega kuueteistkümnendkohtade jadana ja selle genereerib algoritm. See algoritm on loodud tagama, et sama UUID-d ei genereeriks ükski teine inimene universumis.
Näide:
- genereerige unikaalne UUID SELECT uuid_generate_v4 ()
Sellega jõuame selle artikli lõpuni PostgreSQL-i õpetajatele algajatele. Loodan, et teile meeldis seda artiklit lugeda PostgreSQLi õpetajatele algajatele. Oleme näinud erinevaid käske, mis aitavad teil päringuid kirjutada ja oma andmebaasidega ringi mängida. Kui soovite SQL-i kohta rohkem teada saada ja seda avatud lähtekoodiga relatsiooniandmebaasi tundma õppida, vaadake meie . See koolitus aitab teil põhjalikult mõista SQL-i ja aitab teil selle teema üle meisterlikkust saavutada.
Kas teil on meile küsimus? Palun mainige seda kommentaaride jaotises ” PostgreSQLi õpetus algajatele ”Ja pöördun teie poole tagasi.