Основы представлений в PostgreSQL
Пересказ статьи Shivayan Mukherjee. The Basics of PostgreSQL Views
Эта статья поможет вам понять, что такое представление в базе данных в общем, и что такое представление конкретно в PostgreSQL. Вы научитесь создавать/писать запросы/удалять представление в PostgreSQL, осваивая соответствующий синтаксис на рабочих примерах, используя для этого терминал Psql или инструмент PgAdmin.
Что такое представление?
Представление в SQL можно рассматривать как виртуальную таблицу, которая основана на результирующем наборе оператора SQL. Подобно реальной таблице представление состоит из строк и столбцов, и оно может включать данные из одной или большего числа таблиц. Представление не содержит каких либо данных, которые нужно было бы физически хранить, т.е. оно не сохраняется в памяти и фактически не занимает места в хранилище. Подобно таблице SQL, имя представления должно быть уникальным в пределах базы данных. Так как представлению назначаются отдельные разрешения, представления могут использоваться для ограничения доступа к таблицам, так что пользователи видят только конкретные строки или столбцы таблицы.
Представление в PostgreSQL удовлетворяет всем упомянутым характеристикам и может быть создано с помощью нижеприведенного синтаксиса:
CREATE [TEMP | TEMPORARY] VIEW имя_представления AS
SELECT столбец1, столбец2.....
FROM имя_таблицы
WHERE [условие];
Здесь имя представления указывается после ключевых слов 'CREATE VIEW', после чего следуют требуемые столбцы из таблицы, а затем условие WHERE. Ключевое слово 'Temp/Temporary' не является обязательным и задается, если создается временное представление. Временное представление прекращает существование в конце текущего сеанса.
Пример:
CREATE VIEW STOCK_VIEW AS
SELECT stock_id, stock_name, stock_price
FROM stocks;
Вывод списка представлений в терминале Psql:
Для вывода всех представлений в схеме PostgreSQL может использоваться команда '\dv'.
Создание представления в PgAdmin
Для создания представления в PgAdmin нужно перейти в раздел меню 'views->Create->View', как показано ниже:
Список представлений в PgAdmin
После создания представления либо в терминале Psql, либо в PgAdmin, его можно увидеть в списке 'Views' готовым для использования, как показано ниже.
Запрос к представлению
Запрос на выборку данных из представления PostgreSQL подобен запросу из таблицы. Вот синтаксис:
Select * from stock_view;
Запрос к представлению в PgAdmin
Для запроса к представлению в PgAdmin нужно перейти в меню 'Views->View->View/Edit Data'. Затем пользователю будет предложено несколько вариантов, из которых пользователь может сделать выбор на основе его требований и получить данные. Заметим, что хотя опция здесь читается как 'View/Edit Data' (просмотр/редактирование данных), представления не могут редактироваться. Однако если обновляются данные в исходной таблице, это также отражается в представлении.
Удаление представления
Запрос на удаление представления простой и короткий. Чтобы удалить представление, укажите имя представления сразу после ключевых слов 'DROP VIEW'.
DROP VIEW имя_представления;
Удаление представления в PgAdmin
Чтобы удалить представление в PgAdmin, необходимо перейти в меню 'Views->View->Delete/Drop'.
Ссылки по теме
1. 3 лучших совета для написания более быстрых представлений SQL
2. Индексированные представления - панацея производительности или беда
3. Что такое материализованное представление, и зачем его использовать?
Обратные ссылки
Автор не разрешил комментировать эту запись
Комментарии
Показывать комментарии Как список | Древовидной структурой