mikä on PostgreSQL olemassa?
olemassa oleva operaattori testaa, onko rivejä olemassa alaryhmässä. Tämä tarkoittaa, että operaattoria käytetään yhdessä alaluokan kanssa. Olemassa olevan operaattorin sanotaan täyttyneen, kun alaryhmästä löytyy ainakin yksi rivi. Voit käyttää tätä toimintoa SELECT -, UPDATE -, INSERT-ja DELETE-lausumien kanssa.
tässä PostgreSQL-tutoriaalissa opit seuraavat asiat:
- syntaksi
- SELECT Statement
- with INSERT Statement
- With UPDATE Statement
- with DELETE Statement
- With PGADMIN
syntaksi
tässä on syntaksi PostgreSQL olemassa lauseke:
WHERE EXISTS (subquery);
yllä oleva syntaksi osoittaa, että olemassa oleva operaattori ottaa argumentin, joka on alakappale. Alikuvaus on yksinkertaisesti SELECT-lauseke, jonka pitäisi alkaa SELECT * – lausekkeella sarakkeiden nimien tai lausekkeiden luettelon sijaan.
kun SELECT-lauseke on
, katsotaan, miten SELECT-lauseketta käytetään olemassa olevan operaattorin kanssa. Meillä on seuraavat taulukot:
kirja:
Hinta:
aja seuraava lauseke:
SELECT *FROM BookWHERE EXISTS (SELECT * FROM Price WHERE Book.id = Price.id);
This returns the following:
yllä olevan komennon tulee palauttaa kaikki Kirjataulukon tietueet, joiden id vastaa alikentän kaikkien tietueiden id: tä. Vain yksi tunnistus täsmäsi. Näin ollen vain yksi levy palautettiin.
insertin lausekkeella
Voimme käyttää olemassa olevaa operaattoria insertissä lausekkeessa. Meillä on seuraavat 3 taulukkoa:
kirja:
Hinta:
Hinta2:
voimme sitten ajaa seuraavan lausuman:
INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT id FROM Book WHERE Book.id = Price2.id);
hintataulukko on nyt seuraava:
rivi, jonka id on 5 taulukossa nimeltään Price2, on sovitettu. Tämän jälkeen ennätys lisättiin hintataulukkoon.
Päivityslausekkeella
Voimme käyttää olemassa olevaa operaattoria PÄIVITYSLAUSEKKEESSA.
suorita seuraava kysely:
UPDATE PriceSET price = (SELECT price FROM Price2 WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);
päivitämme hintataulukon hintasaraketta. Tavoitteenamme on, että tunnisteen jakavien tuotteiden hinnat ovat samat. Vain yksi rivi täsmäsi, eli 5.
koska hinnat ovat kuitenkin samat eli 205, päivitystä ei tehty. Jos olisi ollut eroa, olisi tehty päivitys.
DELETE Statement
PostgreSQL DELETE statement voi käyttää olemassa olevaa operaattoria. Tässä on esimerkki:
DELETE FROM PriceWHERE EXISTS (SELECT * FROM Price2 WHERE Price.id = Price2.id);
hintataulukko on nyt seuraava:
rivi, jonka tunnus on 5, on poistettu.
Pgadmin
Katsotaanpa nyt, miten nämä toimet voidaan suorittaa pgadmin-ohjelmalla.
SELECT Statement
to perform the same through pgadmin, do this:
Step 1) Kirjaudu Pgadmin-tilillesi.
Askel 2)
- alkaen navigointipalkki vasemmalla painikkeella tietokannat.
- Klikkaa Demoa.
Vaihe 3) Kirjoita kysely kyselyn muokkaimessa:
SELECT *FROM BookWHERE EXISTS (SELECT * FROM Price WHERE Book.id = Price.id);
Vaihe 4) Napsauta Suorita-painiketta.
sen pitäisi palauttaa seuraavat:
kun lisäät lausuman
saavuttaaksesi saman pgadminin kautta, tee näin:
Vaihe 1) Kirjaudu Pgadmin-tilillesi.
Vaihe 2)
- alkaen navigointipalkki vasemmalla painikkeella tietokannat.
- Klikkaa Demoa.
Vaihe 3) Kirjoita kysely kyselyn muokkaimessa:
INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT id FROM Book WHERE Book.id = Price2.id);
Vaihe 4) Napsauta Suorita-painiketta.
hintataulukon pitäisi nyt olla seuraava:
kanssa päivitys lausuma
saavuttaa saman kautta pgAdmin, tee tämä:
Vaihe 1) Kirjaudu pgadmin tilille.
Askel 2)
- alkaen navigointipalkki vasemmalla painikkeella tietokannat.
- Klikkaa Demoa.
Vaihe 3) Kirjoita kysely kyselyn muokkaimessa:
UPDATE PriceSET price = (SELECT price FROM Price2 WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);
Vaihe 4) Napsauta Suorita-painiketta.
hintataulukon pitäisi nyt olla seuraava:
Poista lausuma
saman saavuttamiseksi pgadminin kautta, tee näin:
Vaihe 1) Kirjaudu Pgadmin-tilillesi.
Askel 2)
- alkaen navigointipalkki vasemmalla painikkeella tietokannat.
- Klikkaa Demoa.
Vaihe 3) Kirjoita kysely kyselyn muokkaimessa:
DELETE FROM PriceWHERE EXISTS (SELECT * FROM Price2 WHERE Price.id = Price2.id);
Vaihe 4) Napsauta Suorita-painiketta.
hintataulukon pitäisi nyt olla seuraava:
Yhteenveto
- olemassa oleva operaattori testaa, onko rivejä olemassa alaryhmässä.
- sitä käytetään alakerroksen kanssa, ja sen sanotaan täyttyneen, kun alakerta palaa ainakin yhden rivin verran.
- sitä käytetään yhdessä SELECT -, UPDATE -, INSERT-ja DELETE-lausekkeiden kanssa.
Lataa tässä tutoriaalissa käytetty tietokanta