В этом учебном пособии вы узнаете, как создавать, обновлять и удалять VIEWS в PostgreSQL с синтаксисом и примерами.
Что такое VIEW в PostgreSQL?
В PostgreSQL VIEW это не физическая таблица, а скорее виртуальная таблица, созданная запросом joins, соединяющим одну или несколько таблиц.
Создать VIEW
Синтаксис
Синтаксис оператора CREATE VIEW в PostgreSQL:
SELECT columns
FROM tables
[WHERE conditions];
- OR REPLACE
- Необязательный. Если вы не укажете этот оператор, а VIEW уже существует, оператор CREATE VIEW вернет ошибку.
- view_name
- Имя VIEW, которое вы хотите создать в PostgreSQL.
- WHERE conditions
- Необязательный. Условия, которые должны быть выполнены для включения записей в VIEW.
Пример
Вот пример того, как использовать оператор CREATE VIEW для создания представления в PostgreSQL:
1 2 3 4 |
CREATE VIEW current_inventory AS SELECT product_name, quantity FROM products WHERE quantity > 0; |
Этот пример CREATE VIEW создаст виртуальную таблицу на основе результирующего набора оператора SELECT. Теперь вы можете запросить PostgreSQL VIEW следующим образом:
1 2 |
SELECT * FROM current_inventory; |
Обновить VIEW
Вы можете изменить определение VIEW в PostgreSQL, не удаляя его, используя оператор CREATE OR REPLACE VIEW.
Синтаксис
Синтаксис для оператора CREATE OR REPLACE VIEW в PostgreSQL:
SELECT columns
FROM table
WHERE conditions;
- view_name
- Название представления, которое вы хотите обновить.
Пример
Вот пример того, как может использоваться оператор CREATE OR REPLACE VIEW в PostgreSQL:
1 2 3 4 5 6 |
CREATE or REPLACE VIEW current_inventory AS SELECT product_name, quantity, category_name FROM products INNER JOIN categories ON products.category_id = categories.category_id WHERE quantity > 0; |
Этот пример CREATE OR REPLACE VIEW обновил бы определение VIEW с именем current_inventory, не удаляя его.
ВНИМАНИЕ:
Оператор CREATE OR REPLACE VIEW будет работать, если вы добавляете столбцы в представление в конце списка. Тем не менее, это будет ошибка, если вы добавляете новые столбцы в существующие столбцы (то есть: начало или середина существующего списка).
В этом случае не используйте оператор CREATE OR REPLACE VIEW. Лучше удалить VIEW и использовать оператор CREATE VIEW!
Удалить VIEW
После создания VIEW в PostgreSQL вы можете удалить его с помощью оператора Drop VIEW.
Синтаксис
Синтаксис для оператора Drop VIEW в PostgreSQL:
- view_name
- Название представления, которое вы хотите удалить.
- IF EXISTS
- Необязательный. Если вы не укажете этот параметр и VIEW не существует, оператор Drop VIEW вернет ошибку.
Пример
Вот пример того, как использовать оператор Drop VIEW в PostgreSQL:
1 |
Drop VIEW current_inventory; |
Этот пример удалит VIEW с именем current_inventory.