17:21
Создание представлений (VIEW): Команда CREATE VIEW.

Курс по SQL

Урок 33: Создание представлений (VIEW): Команда CREATE VIEW

В этом уроке мы рассмотрим создание представлений (VIEW) в SQL. Представление (VIEW) — это виртуальная таблица, созданная на основе результата выполнения запроса. Представления позволяют упростить сложные запросы, повысить безопасность данных и обеспечить удобный доступ к данным. Мы изучим синтаксис команды CREATE VIEW и примеры ее использования.

Основы представлений

Представление — это виртуальная таблица, которая не содержит данных самостоятельно, но отображает данные, полученные в результате выполнения запроса. Рассмотрим пример создания представления для отображения имен студентов и названий курсов, на которых они учатся:

CREATE VIEW СтудентыКурсы AS
SELECT Студенты.Имя, Курсы.Название AS Курс
FROM Студенты
JOIN Курсы ON Студенты.КурсID = Курсы.ID;

Результат выполнения

Представление СтудентыКурсы создано успешно.

Синтаксис команды CREATE VIEW

Синтаксис команды CREATE VIEW следующий:

CREATE VIEW имя_представления AS
SELECT столбцы
FROM таблицы
WHERE условие;

Представление создается на основе запроса SELECT, который определяет, какие данные будут отображаться в виртуальной таблице.

Преимущества использования представлений

  • Упрощение сложных запросов: Представления позволяют скрыть сложные запросы за простым интерфейсом.
  • Повышение безопасности данных: Представления позволяют ограничить доступ к определенным столбцам и строкам данных.
  • Удобство использования: Представления обеспечивают удобный доступ к часто используемым данным.

Примеры использования представлений

Рассмотрим примеры создания и использования представлений для различных задач.

Пример 1: Создание представления для отображения студентов и их курсов

CREATE VIEW СтудентыКурсы AS
SELECT Студенты.Имя, Курсы.Название AS Курс
FROM Студенты
JOIN Курсы ON Студенты.КурсID = Курсы.ID;

Теперь мы можем использовать представление СтудентыКурсы для выборки данных:

SELECT * FROM СтудентыКурсы;

Результат выполнения

Имя | Курс
Иван | Математика
Мария | Физика

Пример 2: Создание представления для отображения курсов и среднего балла студентов на этих курсах

CREATE VIEW КурсыСреднийБалл AS
SELECT Курсы.Название AS Курс, AVG(Студенты.Оценка) AS СреднийБалл
FROM Курсы
JOIN Студенты ON Курсы.ID = Студенты.КурсID
GROUP BY Курсы.Название;

Теперь мы можем использовать представление КурсыСреднийБалл для выборки данных:

SELECT * FROM КурсыСреднийБалл;

Результат выполнения

Курс | СреднийБалл
Математика | 85
Физика | 70

Пример 3: Создание представления для отображения студентов с высокими оценками

CREATE VIEW СтудентыВысокиеОценки AS
SELECT Имя, Оценка
FROM Студенты
WHERE Оценка > 80;

Теперь мы можем использовать представление СтудентыВысокиеОценки для выборки данных:

SELECT * FROM СтудентыВысокиеОценки;

Результат выполнения

Имя | Оценка
Иван | 90

Упражнения

Упражнение 1: Создание представления для отображения студентов и курсов

Создайте представление для отображения имен студентов и названий курсов, на которых они учатся.

Решение:

CREATE VIEW СтудентыКурсы AS
SELECT Студенты.Имя, Курсы.Название AS Курс
FROM Студенты
JOIN Курсы ON Студенты.КурсID = Курсы.ID;

Объяснение: Мы создали представление СтудентыКурсы для отображения имен студентов и названий курсов, на которых они учатся.

Упражнение 2: Создание представления для отображения курсов и среднего балла студентов

Создайте представление для отображения названий курсов и среднего балла студентов на этих курсах.

Решение:

CREATE VIEW КурсыСреднийБалл AS
SELECT Курсы.Название AS Курс, AVG(Студенты.Оценка) AS СреднийБалл
FROM Курсы
JOIN Студенты ON Курсы.ID = Студенты.КурсID
GROUP BY Курсы.Название;

Объяснение: Мы создали представление КурсыСреднийБалл для отображения названий курсов и среднего балла студентов на этих курсах.

Упражнение 3: Создание представления для отображения студентов с высокими оценками

Создайте представление для отображения имен студентов и их оценок, если оценка выше 85.

Решение:

CREATE VIEW СтудентыВысокиеОценки AS
SELECT Имя, Оценка
FROM Студенты
WHERE Оценка > 85;

Объяснение: Мы создали представление СтудентыВысокиеОценки для отображения имен студентов и их оценок, если оценка выше 85.

Упражнение 4: Использование представления для выборки данных

Используйте представление СтудентыКурсы для выборки всех студентов, которые учатся на курсе «Физика».

Решение:

SELECT Имя
FROM СтудентыКурсы
WHERE Курс = 'Физика';

Объяснение: Мы использовали представление СтудентыКурсы для выборки всех студентов, которые учатся на курсе «Физика».

Категория: SQL | Просмотров: 89 | Добавил: Admin | Рейтинг: 1.0/1
Всего комментариев: 0
Имя *:
Email *:
Код *: