Ada PostgreSQL dengan Contoh

Daftar Isi:

Anonim

Apa itu PostgreSQL Exists?

Operator EXISTS menguji apakah baris ada di subkueri. Ini berarti operator digunakan bersama dengan subkueri. Operator yang Ada dikatakan telah terpenuhi ketika setidaknya satu baris ditemukan di subkueri. Anda dapat menggunakan operasi ini bersama dengan pernyataan SELECT, UPDATE, INSERT, dan DELETE.

Dalam Tutorial PostgreSQL ini, Anda akan mempelajari hal-hal berikut:

  • Sintaksis
  • Dengan Pernyataan SELECT
  • Dengan Pernyataan INSERT
  • Dengan Pernyataan UPDATE
  • Dengan Pernyataan DELETE
  • Dengan pgAdmin

Sintaksis

Berikut adalah sintaks untuk pernyataan EXISTS PostgreSQL:

WHERE EXISTS (subquery);

Sintaks di atas menunjukkan bahwa operator EXISTS mengambil argumen, yang merupakan subkueri. Subkueri hanyalah pernyataan SELECT yang harus dimulai dengan SELECT *, bukan daftar nama kolom atau ekspresi.

Dengan Pernyataan SELECT

Mari kita lihat bagaimana menggunakan pernyataan SELECT dengan operator EXISTS. Kami memiliki tabel berikut:

Book:

Harga:

Jalankan pernyataan berikut:

SELECT *FROM BookWHERE EXISTS (SELECT *FROM PriceWHERE Book.id = Price.id);

Ini mengembalikan yang berikut:

Perintah di atas harus mengembalikan semua record dalam tabel Book yang idnya cocok dengan id dari record apapun oleh subquery. Hanya satu id yang cocok. Karenanya, hanya satu catatan yang dikembalikan.

Dengan Pernyataan INSERT

Kita dapat menggunakan operator EXISTS dalam pernyataan INSERT. Kami memiliki 3 tabel berikut:

Book:

Harga:

Harga2:

Kami kemudian dapat menjalankan pernyataan berikut:

INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT idFROM BookWHERE Book.id = Price2.id);

Tabel Harga sekarang adalah sebagai berikut:

Baris dengan id 5 dalam tabel bernama Price2 cocok. Catatan ini kemudian dimasukkan ke dalam tabel Harga.

Dengan Pernyataan UPDATE

Kita dapat menggunakan operator EXISTS dalam pernyataan UPDATE.

Jalankan kueri berikut:

UPDATE PriceSET price = (SELECT priceFROM Price2WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);

Kami memperbarui kolom harga dari tabel Harga. Tujuan kami adalah agar harga item yang berbagi id sama. Hanya satu baris yang cocok, yaitu 5.

Namun, karena harganya sama, yaitu 205, tidak ada pembaruan yang dilakukan. Jika ada perbedaan, pembaruan akan dilakukan.

Dengan Pernyataan DELETE

Pernyataan HAPUS PostgreSQL dapat menggunakan operator EXISTS. Berikut ini contohnya:

DELETE FROM PriceWHERE EXISTS (SELECT *FROM Price2WHERE Price.id = Price2.id);

Tabel Harga sekarang adalah sebagai berikut:

Baris dengan id 5 telah dihapus.

Dengan pgAdmin

Sekarang mari kita lihat bagaimana tindakan ini dapat dilakukan menggunakan pgAdmin.

Dengan Pernyataan SELECT

Untuk mencapai hal yang sama melalui pgAdmin, lakukan ini:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2)

  1. Dari bilah navigasi di sebelah kiri- Klik Database.
  2. Klik Demo.

Langkah 3) Ketik kueri di editor kueri:

SELECT *FROM BookWHERE EXISTS (SELECT *FROM PriceWHERE Book.id = Price.id);

Langkah 4) Klik tombol Execute.

Ini harus mengembalikan yang berikut:

Dengan Pernyataan INSERT

Untuk mencapai hal yang sama melalui pgAdmin, lakukan ini:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2)

  1. Dari bilah navigasi di sebelah kiri- Klik Database.
  2. Klik Demo.

Langkah 3) Ketik kueri di editor kueri:

INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT idFROM BookWHERE Book.id = Price2.id);

Langkah 4) Klik tombol Execute.

Tabel Harga sekarang harus seperti berikut:

Dengan Pernyataan UPDATE

Untuk mencapai hal yang sama melalui pgAdmin, lakukan ini:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2)

  1. Dari bilah navigasi di sebelah kiri- Klik Database.
  2. Klik Demo.

Langkah 3) Ketik kueri di editor kueri:

UPDATE PriceSET price = (SELECT priceFROM Price2WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);

Langkah 4) Klik tombol Execute.

Tabel Harga sekarang harus seperti berikut:

Dengan Pernyataan DELETE

Untuk mencapai hal yang sama melalui pgAdmin, lakukan ini:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2)

  1. Dari bilah navigasi di sebelah kiri- Klik Database.
  2. Klik Demo.

Langkah 3) Ketik kueri di editor kueri:

DELETE FROM PriceWHERE EXISTS (SELECT *FROM Price2WHERE Price.id = Price2.id);

Langkah 4) Klik tombol Execute.

Tabel Harga sekarang harus seperti berikut:

Ringkasan

  • Operator EXISTS menguji apakah baris ada di subkueri.
  • Ini digunakan dengan subkueri dan dikatakan telah terpenuhi ketika subkueri mengembalikan setidaknya satu baris.
  • Ini digunakan bersama dengan pernyataan SELECT, UPDATE, INSERT, dan DELETE.

Unduh Basis Data yang digunakan dalam Tutorial ini