Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So erstellen Sie eine MySQL-Ansicht

SQL-Ansichten stellen eine Teilmenge von Daten in der Datenbank dar und bieten eine bessere Sicherheit und Einfachheit für Datenanalyse und Berichterstellung. So erstellen Sie eine MySQL-Ansicht, um Abfragen zu speichern, die dynamisch ausgeführt werden, um Ergebnisse zu generieren, anstatt tatsächliche Daten zu speichern.

So erstellen Sie eine MySQL-Ansicht

Hier sind die Schritte zum Erstellen einer MySQL-Ansicht.

SQL-Ansichten sind im Grunde gespeicherte SQL-Abfragen, denen ein „Ansicht“-Name zugewiesen wurde. Wenn Sie auf eine SQL-Ansicht zugreifen, wird ihre Abfrage dynamisch ausgeführt, um die Ergebnismenge zurückzugeben.

SQL-Ansichten enthalten eigentlich keine Daten, sondern nur die gespeicherte Abfrage und belegen sehr wenig Platz.

Bonuslektüre:So erhalten Sie die Gesamtzahl der Benutzer pro Tag in MySQL

Was sind die Verwendungen der SQL-Ansicht

Hier sind die wichtigsten Verwendungszwecke der SQL-Ansicht

  • Berichte – SQL-Ansichten stellen nur eine Teilmenge von Daten dar. Sie können also verwendet werden, um Berichtstabellen für die Datenanalyse zu erstellen
  • Sicherheit – SQL-Views werden verwendet, um eine bessere Sicherheit zu bieten. Sie können Benutzern problemlos Zugriff auf Ansichten statt auf zugrunde liegende Tabellen gewähren
  • Einfachheit – Sie können mithilfe von Joins eine einzelne Ansicht aus mehreren Tabellen erstellen. So können Benutzer problemlos auf Daten zugreifen, ohne das zugrunde liegende Datenbankschema zu kennen.

Bonus-Lesetext:So gewinnen Sie neue Benutzer pro Tag in MySQL

Was sind die Vorteile von Ansichten in SQL

Hier sind einige der Vorteile von Ansichten in SQL:

  1. Eine Ansicht repräsentiert eine virtuelle Tabelle und keine tatsächliche Tabelle. Sie belegen also keinen anderen Platz als die gespeicherte SQL-Abfrage
  2. Sie können Ansichten verwenden, um eine Teilmenge von Tabellendaten abzurufen und den Zugriff der Benutzer auf die zugrunde liegenden Daten zu begrenzen
  3. In ähnlicher Weise können Sie eine MySQL-Ansicht mit aggregierten Daten erstellen (z. B. Summe, Anzahl usw.)
  4. Sie können benutzerdefinierte Ansichten erstellen, die Daten aus mehreren Tabellen, Zusammenfassungen, Partitionen oder sogar berechnete Daten enthalten, ohne die zugrunde liegenden Daten zu ändern.

Bonuslektüre:So berechnen Sie Einnahmen in MySQL

So erstellen Sie eine MySQL-Ansicht

Es ist sehr einfach, eine Ansicht in MySQL zu erstellen. Die grundlegende Syntax zum Erstellen einer Ansicht in MySQL ist

CREATE VIEW view_name AS
SELECT column1, column2.....
FROM table_name
WHERE [condition];

Angenommen, Sie haben eine Tabelle orders(order_date,product_id,quantity)

mysql> select * from orders;
+------------+------------+----------+
| order_date | product_id | quantity |
+------------+------------+----------+
| 2020-05-01 |          1 |       23 |
| 2020-05-01 |          2 |       35 |
| 2020-05-02 |          1 |       45 |
| 2020-05-02 |          2 |       23 |
| 2020-05-03 |          1 |       19 |
| 2020-05-03 |          2 |       15 |
| 2020-05-04 |          1 |       34 |
| 2020-05-04 |          2 |       56 |
+------------+------------+----------+

Angenommen, Sie möchten eine MySQL-Ansicht (z. B. order_view) erstellen, die nur das order_date und die Menge anzeigt. Hier ist die SQL-Abfrage zum Erstellen der Ansicht

mysql> create view order_view as
      select order_date,quantity
      from orders;

Jetzt können Sie diese Ansicht wie eine normale Tabelle abfragen.

mysql> select * from order_view;
+------------+----------+
| order_date | quantity |
+------------+----------+
| 2020-05-01 |       23 |
| 2020-05-01 |       35 |
| 2020-05-02 |       45 |
| 2020-05-02 |       23 |
| 2020-05-03 |       19 |
| 2020-05-03 |       15 |
| 2020-05-04 |       34 |
| 2020-05-04 |       56 |
+------------+----------+

Bonuslektüre:So erhalten Sie die Verkaufsdaten der letzten 3 Monate in MySQL

Sie können die Ansicht auch mit CREATE OR REPLACE ersetzen Erklärung. Dies ersetzt die SQL-Abfrage für view.

mysql> create or replace view order_view as
       select order_date,product_id,quantity
       from orders;

mysql> select * from order_view;
+------------+------------+----------+
| order_date | product_id | quantity |
+------------+------------+----------+
| 2020-05-01 |          1 |       23 |
| 2020-05-01 |          2 |       35 |
| 2020-05-02 |          1 |       45 |
| 2020-05-02 |          2 |       23 |
| 2020-05-03 |          1 |       19 |
| 2020-05-03 |          2 |       15 |
| 2020-05-04 |          1 |       34 |
| 2020-05-04 |          2 |       56 |
+------------+------------+----------+

Sie können auch eine Ansicht in MySQL mit JOIN erstellen. Hier ist ein Beispiel

mysql> create view order_view as
       select orders.order_date,orders.quantity,sales.sale
       from orders INNER JOIN sales on orders.order_date=sales.order_date;
mysql> select * from order_view;
+------------+----------+----------+
| order_date | quantity |    sale  |
+------------+----------+----------+
| 2020-05-01 |       23 |      350 |
| 2020-05-01 |       23 |      375 |
| 2020-05-02 |       45 |      423 |
| 2020-05-02 |       23 |      350 |
| 2020-05-03 |       19 |      230 |
| 2020-05-03 |       15 |      180 |
| 2020-05-04 |       34 |      450 |
| 2020-05-04 |       56 |      650 |
+------------+----------+----------+

So löschen Sie die Ansicht in MySQL

So löschen Sie die Ansicht in MySQL, wenn Sie sie nicht benötigen. Hier ist die Syntax

DROP VIEW view_name;

Hier ist ein Beispiel

DROP VIEW order_view;

Das ist es! Jetzt können Sie ganz einfach eine MySQL-Ansicht erstellen und sie für die Datenanalyse und Berichterstellung verwenden.

Ubiq macht es einfach, Daten innerhalb von Minuten zu visualisieren und in Echtzeit-Dashboards zu überwachen. Probieren Sie es noch heute aus!