Ответ
Представление (VIEW) в реляционных базах данных — это сохраненный SQL-запрос, который можно использовать как виртуальную таблицу. Представление не хранит данные физически; вместо этого оно динамически извлекает их из одной или нескольких базовых таблиц при каждом обращении.
Основные цели использования:
- Упрощение сложных запросов: Скрытие сложных
JOIN
и вычислений за простым именем. - Безопасность: Предоставление доступа только к определенным столбцам или строкам, скрывая конфиденциальные данные.
- Логическая независимость данных: Абстрагирование структуры таблиц от клиентских приложений. Если структура базовых таблиц изменится, можно изменить VIEW, не затрагивая приложения, которые его используют.
- Переиспользование кода: Избежание дублирования одного и того же сложного запроса в разных частях системы.
Пример создания (SQL):
-- Создаем представление, которое показывает только активных пользователей
CREATE VIEW V_ActiveUsers AS
SELECT
user_id,
username,
email,
registration_date
FROM
Users
WHERE
is_active = TRUE;
После создания с представлением V_ActiveUsers
можно работать как с обычной таблицей:
-- Запрос к представлению
SELECT username, email FROM V_ActiveUsers ORDER BY registration_date DESC;
Данные в представлении всегда актуальны, так как запрос к базовым таблицам выполняется в реальном времени.