PostgreSQL Buat Tampilan dengan Contoh

โšก Ringkasan Cerdas

PostgreSQL View adalah tabel semu yang dibangun dari kueri SELECT yang tersimpan, memungkinkan Anda untuk membungkus kueri yang kompleks atau sering digunakan di balik satu nama yang dapat Anda baca, perbarui, atau hapus seperti tabel biasa.

  • ๏ธ Tabel Semu: Sebuah view menyimpan query, bukan data, namun Anda dapat memilihnya (SELECT) seperti pada sebuah tabel.
  • ๏ธ Membuat: Perintah CREATE VIEW memberi nama pada kueri SELECT, bahkan di beberapa tabel dasar, agar mudah digunakan kembali.
  • โ™ป๏ธ Menggantikan: CREATE OR REPLACE VIEW mengubah tampilan tanpa perlu melakukan dropdown.ping .
  • ๏ธ Penurunan: DROP VIEW menghapus tampilan, dan IF EXISTS menghindari kesalahan.
  • ๐Ÿค– Bantuan AI: Asisten AI menghasilkan definisi tampilan dan menyarankan kueri mana yang perlu dibungkus.

PostgreSQL Buat Tampilan

Apa itu PostgreSQL Melihat?

In PostgreSQL, tampilan adalah tabel semu. Artinya suatu tampilan bukanlah tabel sebenarnya. Namun, kita dapat MEMILIHnya sebagai tabel biasa. Tampilan dapat memiliki semua atau beberapa kolom tabel. Suatu tampilan juga dapat mewakili lebih dari satu tabel.

Tabel-tabel tersebut disebut sebagai tabel dasar. Saat membuat tampilan (view), Anda hanya perlu membuat kueri lalu memberinya nama, menjadikannya alat yang berguna untuk membungkus (wrapping).ping kueri yang kompleks dan umum digunakan.

membuat PostgreSQL views

Untuk membuat PostgreSQL lihat, kami menggunakan pernyataan CREATE VIEW. Berikut adalah sintaks untuk pernyataan ini:

CREATE [OR REPLACE] VIEW view-name AS
  SELECT column(s)
  FROM table(s)
  [WHERE condition(s)];

Parameter OR REPLACE akan menggantikan tampilan jika sudah ada. Jika dihilangkan dan tampilan sudah ada, kesalahan akan dikembalikan.

Parameter view-name adalah nama tampilan yang perlu Anda buat.

Kondisi WHERE bersifat opsional, dan harus dipenuhi agar setiap data dapat ditambahkan ke tampilan.

Perhatikan tabel Harga yang diberikan di bawah ini:

Harga:

membuat PostgreSQL views

Mari kita buat tampilan dari tabel di atas:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

Perintah di atas akan membuat tampilan berdasarkan PILIH pernyataan. Hanya catatan yang harganya lebih besar dari 200 yang akan ditambahkan ke tampilan. Tampilan tersebut diberi nama Price_View. Mari kita menanyakannya untuk melihat isinya:

SELECT *
FROM Price_View;

Ini mengembalikan yang berikut:

membuat PostgreSQL views

Meskipun tabel dasar memiliki 4 catatan, hanya 2 yang ditambahkan ke tampilan.

Di sini, kita hanya dapat menambahkan satu kolom ke tampilan. Mari kita buat tampilan yang hanya mencakup satu kolom dari tabel Harga:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

Tampilan tersebut diberi nama Price_View2 dan hanya mencakup kolom harga pada tabel Harga. Mari kita menanyakan tampilan untuk melihat isinya:

SELECT *
FROM Price_View2;

Ini mengembalikan yang berikut:

membuat PostgreSQL views

Mengubah PostgreSQL views

Definisi suatu tampilan dapat diubah tanpa harus menghilangkannya. Hal ini dilakukan dengan menggunakan pernyataan CREATE OR REPLACE VIEW.

Mari kita tunjukkan hal ini dengan memperbarui tampilan bernama Price_View2.

Harga_Tampilan2:

Mengubah PostgreSQL views

Tabel Bukunya adalah sebagai berikut:

Book:

Mengubah PostgreSQL views

Tabel Harga adalah sebagai berikut:

Harga:

Mengubah PostgreSQL views

Kueri berikut akan membantu kami memperbarui tampilan Price_View2:

CREATE or REPLACE VIEW Price_View2 AS
  SELECT price, name
  FROM Book
  INNER JOIN Price
  ON Book.id = Price.id
  WHERE price > 200;

Sekarang mari kita menanyakan tampilan untuk melihat isinya:

Mengubah PostgreSQL views

Tampilannya telah diubah, dan sekarang kita memiliki dua kolom dari dua tabel berbeda. Ini telah dicapai dengan menggunakan pernyataan GABUNG.

menghapus PostgreSQL views

Kapan saja Anda perlu menghapus a PostgreSQL Untuk melihat tampilan, Anda dapat menggunakan pernyataan DROP VIEW. Berikut sintaks untuk pernyataan tersebut:

DROP VIEW [IF EXISTS] view-name;

Parameter view-name adalah nama tampilan yang akan dihapus.

Dalam sintaks ini, IF EXISTS bersifat opsional. Jika Anda tidak menentukannya dan mencoba menghapus tampilan yang tidak ada, Anda akan mendapatkan kesalahan.

Misalnya, untuk menghapus tampilan bernama Price_View2, kita dapat menjalankan pernyataan berikut:

DROP VIEW Price_View2;

Tampilan akan dihapus.

Menggunakan pgAdmin

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

membuat PostgreSQL views

Untuk mencapai hal yang sama melalui pgAdmin, lakukan ini:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2)

  • Dari bilah navigasi di sebelah kiri- Klik Database.
  • Klik Demo.

membuat PostgreSQL Tampilan Menggunakan pgAdmin

Langkah 3) Ketik kueri di editor kueri:

CREATE VIEW Price_View AS
  SELECT id, price
  FROM Price
  WHERE price > 200;

Langkah 4) Klik tombol Jalankan.

membuat PostgreSQL Tampilan Menggunakan pgAdmin

Langkah 5) Untuk melihat isi tampilan, lakukan hal berikut:

  • Ketik perintah berikut di editor kueri:
SELECT *
FROM Price_View;
  • Klik tombol Jalankan.

membuat PostgreSQL Tampilan Menggunakan pgAdmin

Ini akan mengembalikan hal berikut:

membuat PostgreSQL Tampilan Menggunakan pgAdmin

Untuk membuat tampilan Price_View2, lakukan hal berikut:

Langkah 1) Ketik pertanyaan berikut di editor pertanyaan:

CREATE VIEW Price_View2 AS
  SELECT price
  FROM Price
  WHERE price > 200;

Langkah 2) Klik tombol Jalankan.

membuat PostgreSQL Tampilan Menggunakan pgAdmin

Langkah 3) Untuk melihat isi tampilan, lakukan hal berikut:

  • Ketik pertanyaan berikut di editor pertanyaan:
SELECT *
FROM Price_View2;
  • Klik tombol Jalankan.

membuat PostgreSQL Tampilan Menggunakan pgAdmin

Ini akan mengembalikan hal berikut:

membuat PostgreSQL Tampilan Menggunakan pgAdmin

Mengubah PostgreSQL views

Untuk mencapai hal yang sama melalui pgAdmin, lakukan ini:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2)

  • Dari bilah navigasi di sebelah kiri- Klik Database.
  • Klik Demo.

Mengubah PostgreSQL Tampilan Menggunakan pgAdmin

Langkah 3) Ketik kueri di editor kueri:

CREATE or REPLACE VIEW Price_View2 AS
  SELECT price, name
  FROM Book
  INNER JOIN Price
  ON Book.id = Price.id
  WHERE price > 200;

Langkah 4) Klik tombol Jalankan.

Mengubah PostgreSQL Tampilan Menggunakan pgAdmin

Langkah 5) Ketik pertanyaan berikut di editor pertanyaan:

SELECT *
FROM Price_View2;

Ini akan mengembalikan hal berikut:

Mengubah PostgreSQL Tampilan Menggunakan pgAdmin

menghapus PostgreSQL views

Untuk mencapai hal yang sama melalui pgAdmin, lakukan ini:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2)

  • Dari bilah navigasi di sebelah kiri- Klik Database.
  • Klik Demo.

menghapus PostgreSQL Tampilan Menggunakan pgAdmin

Langkah 3) Ketik kueri di editor kueri:

DROP VIEW Price_View2;

Langkah 4) Klik tombol Jalankan.

menghapus PostgreSQL Tampilan Menggunakan pgAdmin

Tampilan akan dihapus.

Unduh Database yang digunakan dalam Tutorial ini

Pertanyaan Umum Demo Slot

Sebuah tabel secara fisik menyimpan data di disk. Sebuah view hanya menyimpan kueri SELECT, sehingga menjalankan kueri tersebut akan mengulang kueri yang sama dan mengembalikan data terkini dari tabel dasar.

Materialized view menyimpan hasil query di disk. Proses pembacaannya lebih cepat daripada plain view, tetapi membutuhkan perintah REFRESH MATERIALIZED VIEW untuk menampilkan data baru.

Tampilan standar menjalankan kuerinya setiap kali, menampilkan data langsung. Tampilan materialisasi menyimpan hasil di disk untuk kecepatan, tetapi dapat menjadi usang sampai diperbarui.

Terkadang. Tampilan tabel tunggal sederhana tanpa agregasi secara otomatis dapat diperbarui, sehingga INSERT, UPDATE, dan DELETE berfungsi langsung. Tampilan yang kompleks membutuhkan pemicu INSTEAD OF.

Lakukan query pada katalog: SELECT table_name FROM information_schema.views WHERE table_schema = 'public'. Di pgAdmin, Anda dapat memperluas node Views di bawah sebuah skema.

Asisten AI mengubah permintaan dalam bahasa biasa menjadi pernyataan CREATE VIEW, memberi nama tampilan, dan menambahkan klausa WHERE dan JOIN yang tepat, sehingga mempercepat kueri yang sering Anda gunakan kembali.

Ya. Tempelkan SELECT yang panjang dan asisten AI akan membungkusnya dalam CREATE OR REPLACE VIEW, menyarankan nama, dan menandai kolom yang membutuhkan alias untuk menghindari nama yang sama.

View biasa tidak mempercepat kueri karena perintah SELECT-nya dijalankan setiap kali. Untuk pembacaan berulang yang lebih cepat, gunakan materialized view, yang menyimpan hasil di disk hingga diperbarui.

Ringkaslah postingan ini dengan: