Вступ до переглядів у MySQL

Перегляд SQL - це не що інше, як віртуальна таблиця бази даних. Представлення містить поля, як реальна таблиця, але ці поля є з однієї або декількох таблиць у базі даних, які виконуються за допомогою запуску купівлі запитів MySQL. Ми можемо виконувати такі операції, як пропозиції WHERE та JOIN у віртуальних таблицях. З іншого боку, VIEW - це не що інше, як SELECT запитів.

Синтаксис:

CREATE VIEW view_name AS
SELECT column1, column2, …
FROM table;

  • “CREATE VIEW view_name” командує MySQL створити таблицю перегляду / віртуальну таблицю під іменем view_name.
  • Оператор "ЯК ВИБІР стовпчик1, стовпець2 ВІД таблиці" отримує стовпчик1 і стовпчик2 з реальної таблиці. Потім він зберігає ці поля у віртуальній таблиці.

Як створити перегляди в MySQL?

Створимо одну таблицю клієнтів із такими атрибутами:

Customer_id Ім'я клієнта Контактний номер Електронна пошта Придбано_значення Місто
184 Раві Кумар 9887463893 8000, 00 Колката
987 Винай Дас 9839878678 12000, 00 Делі
452 К.Амарнат 7598759387 15000, 00 Колката
874 Абхінаш Дезай 7675878798 5000, 00 Мумбаї

Ми створимо одну таблицю cutomser_archive з нашим необхідним атрибутом.

Запит №1

CREATE VIEW customer_archive AS
SELECT customer_id, customer_name, contact_no, city
FROM customer;

Вихід:

Customer_id Ім'я клієнта Контактний номер Місто
184 Раві Кумар 9887463893 Колката
987 Винай Дас 9839878678 Делі
452 К.Амарнат 7598759387 Колката
874 Абхінаш Дезай 7675878798 Мумбаї

Ми також можемо застосувати умову до цього запиту під час створення перегляду.

Запит №2

CREATE VIEW customer_archive AS
SELECT customer_id, customer_name, contact_no, purchased_amont, city
FROM customer
WHERE purchased_amont > 10000;

Вихід:

Customer_id Ім'я клієнта Контактний номер Придбано_значення Місто
987 Винай Дас 9839878678 12000, 00 Делі
452 К.Амарнат 7598759387 15000, 00 Колката

Різні параметри перегляду в MySQL

Нижче наведено різні варіанти перегляду в MySQL, що пояснюються більш докладно,

1. DROP: Перегляд / віртуальну таблицю можна видалити за допомогою команди DROP VIEW. Якщо ми хочемо видалити таблицю customer_archive,

Синтаксис:

DROP VIEW customer_archive;

2. СТВОРИТИ АБО ЗАМОВИТИ: За допомогою команди CREATE OR ЗАМЕНИТИ VIEW ми можемо оновити представлення / віртуальну таблицю.

Синтаксис:

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2, ….
FROM table;

3. ПРИЄДНАЙТЕСЬ: Ми також можемо створити подання, з'єднавши кілька таблиць. Це з'єднання отримає відповідні записи з обох таблиць. Існують різні типи з'єднань, названих як внутрішні з'єднання, ліві з'єднання, праві з'єднання, повні зовнішні з'єднання, перехресні з'єднання тощо.

Синтаксис:

CREATE VIEW view-name AS
SELECT column1, column2, column3, …
FROM table_name1 INNER JOIN table_name2
ON table_name1.column = table_name2.column;

Вище - приклад внутрішнього з'єднання. Таким же чином ми можемо застосувати і інші приєднання. У наведеному вище прикладі подання буде створено шляхом консолідації записів, які присутні як у table_name1, так і в table_name2 на основі загального поля.

Приклади переглядів у MySQL

Розглянемо приклад вище:

Customer_id Ім'я клієнта Контактний номер Електронна пошта Придбано_значення Місто
184 Раві Кумар 9887463893 8000, 00 Колката
987 Винай Дас 9839878678 12000, 00 Делі
452 К.Амарнат 7598759387 15000, 00 Колката
874 Абхінаш Дезай 7675878798 5000, 00 Мумбаї
987 Асеем Кумар 9697679867 18000, 00 Cuttack
989 Сакти 9847984788 60000, 00 Cuttack

Це база даних клієнтів.

Ми створимо інший погляд на нього, назвавши його як premium_customer. Умови для клієнтів преміум-класу будуть поки придбані_значення буде більше 10000.

Запит №1

CREATE VIEW premium_customer AS
SELECT customer_id, customer_name, contact_no, purchased_amont, city
FROM customer
WHERE purchased_amont > 10000;

Вихід:

Customer_id Ім'я клієнта Контактний номер Придбано_значення Місто
987 Винай Дас 9839878678 12000, 00 Делі
452 К.Амарнат 7598759387 15000, 00 Колката
987 Асеем Кумар 9697679867 18000, 00 Cuttack
989 Сакти 9847984788 60000, 00 Cuttack

Якщо ми хочемо скинути цю віртуальну таблицю premium_customer, то нижче - синтаксис.

DROP VIEW premium_customer;

Якщо для цієї вищездатної таблиці потрібна якась модифікація, змінивши деякі умови, то

Запит №2

CREATE OR REPLACE VIEW premium_customer AS
SELECT customer_id, customer_name, contact_no, email, purchased_amont, city
FROM customer
WHERE purchased_amount > 6000;

Вихід:

Customer_id Ім'я клієнта Контактний номер Електронна пошта Придбано_значення Місто
184 Раві Кумар 9887463893 8000, 00 Колката
987 Винай Дас 9839878678 12000, 00 Делі
452 К.Амарнат 7598759387 15000, 00 Колката
987 Асеем Кумар 9697679867 18000, 00 Cuttack
989 Сакти 9847984788 60000, 00 Cuttack

Переваги та недоліки поглядів у MySQL

Тут ми обговорюємо переваги та недоліки переглядів у MySQL,

Переваги

  • Безпека: Є багато таблиць, які обмежені багатьма користувачами, оскільки деякі атрибути в цих таблицях будуть дуже чутливими. Отже, якщо ми можемо створити представлення з певними атрибутами для відповідних користувачів, тоді користувачі можуть отримати дозвіл на доступ до певного набору переглядів у базі даних, яка їм дозволена. Це може підтримувати безпеку та цілісність даних, а також користувачі можуть виконувати свої завдання у відповідних авторизованих стовпцях.
  • Простота запиту: Перегляд можна створити шляхом отримання даних з кількох таблиць. Отже, усі накопичувальні записи з усіх таблиць можуть бути представлені однією таблицею, використовуючи запит перегляду.
  • Структурна простота: ми можемо створити спеціалізований або персоналізований вигляд для користувача. Таким чином, ми можемо представити базу даних як набір віртуальних таблиць, які мають сенс для користувача.
  • Послідовність: тут ми згадуємо про послідовність, оскільки цей погляд може представляти послідовне та незмінне зображення структури бази даних, навіть якщо ми робимо певні маніпуляції з основною таблицею або основною таблицею.
  • Цілісність даних: якщо дані отримують доступ до представлення даних, база даних завжди перевіряє дані, щоб переконатися, що вони задовольняють обмеженням цілісності чи ні.

Недоліки

  • Продуктивність: Перегляди - це віртуальна таблиця або представник головних таблиць. Коли ми запускаємо деякі запити для створення представлення даних, СУБД переводить ці запити проти представлень у запити в базових таблицях. Отже, якщо запит перегляду дуже складний, що містить безліч джерел і складних алгоритмів, то прості дії проти цих поглядів потребують значного часу.
  • Обмеження оновлення: Змінюючи рядки в представленні даних, СУБД повинна перевести запит у оновлення на рядки нижньої таблиці джерела. Оновлення може бути виконано простим запитом, але у випадку складного запиту СУБД не дозволить оновлювати, оскільки представлення часто обмежуються лише для читання.

Висновок

Провівши описані вище речі, ми можемо чітко дізнатися про значення цієї команди. Це зручно в багатьох сценаріях реального часу. Головною перевагою цього є те, що ми можемо виконувати безліч складних запитів, просто щоб знати, наскільки ефективним є наш базовий алгоритм. Підтримка безпеки та цілісності даних є ключовою перевагою команди view.

Рекомендовані статті

Це посібник щодо Переглядів в MySQL. Тут ми обговорюємо, як створити представлення в mysql та зрозуміти, як працюють різні варіанти поглядів у MySQL. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. 3 найкращих операторів MySQL
  2. Різні команди запитів MySQL
  3. 6 найкращих підстановок у MySQL
  4. Як працює схема MySQL?