sql >> Databasteknik >  >> RDS >> Mysql

Hur man skapar MySQL View

SQL-vyer representerar en delmängd av data i databasen, erbjuder bättre säkerhet och enkelhet för dataanalys och rapportering. Så här skapar du MySQL-vy för att lagra frågor som körs dynamiskt för att generera resultat, istället för att lagra faktiska data.

Hur man skapar MySQL View

Här är stegen för att skapa MySQL-vy.

SQL-vyer är i princip lagrade SQL-frågor som har tilldelats ett "vy"-namn. När du kommer åt en SQL-vy, körs deras fråga dynamiskt för att returnera resultatuppsättningen.

SQL-vyer innehåller faktiskt ingen data utan bara den lagrade frågan och upptar väldigt lite utrymme.

Bonusläsning:Hur man får totalt antal användare per dag i MySQL

Vad är användningen av SQL-vyn

Här är de viktigaste användningsområdena för SQL-vyn

  • Rapportering – SQL-vyer representerar endast en delmängd av data. Så de kan användas för att skapa rapporttabeller för dataanalys
  • Säkerhet – SQL-vyer används för att erbjuda bättre säkerhet. Du kan säkert ge användarna åtkomst till vyer istället för underliggande tabeller
  • Enkelhet – Du kan skapa en enda vy från flera tabeller med kopplingar. Så användare kan enkelt komma åt data utan att känna till det underliggande databasschemat.

Bonus Läs:Hur man får nya användare per dag i MySQL

Vilka är fördelarna med vyer i SQL

Här är några av fördelarna med vyer i SQL:

  1. En vy representerar en virtuell tabell och inte en faktisk tabell. Så de tar inte upp något annat utrymme än den lagrade SQL-frågan
  2. Du kan använda vyer för att få en delmängd av tabelldata och begränsa användarexponering för underliggande data
  3. På samma sätt kan du skapa MySQL-vy med aggregerad data (t.ex. summa, antal, etc.)
  4. Du kan skapa anpassade vyer som innehåller data från flera tabeller, sammanfattningar, partitioner eller till och med beräknade data, utan att ändra underliggande data.

Bonus Läs:Hur man beräknar intäkter i MySQL

Hur man skapar MySQL View

Det är väldigt enkelt att skapa vy i MySQL. Den grundläggande syntaxen för att skapa vy i MySQL är

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

Låt oss säga att du har en tabell order(order_datum, produkt_id, kvantitet)

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 |
+------------+------------+----------+

Låt oss säga att du vill skapa MySQL-vy (t.ex. order_view) som bara visar order_date och kvantitet. Här är SQL-frågan för att skapa vy

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

Nu kan du fråga den här vyn precis som du skulle göra en vanlig tabell.

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 |
+------------+----------+

Bonusläs:Hur man får de senaste 3 månadernas försäljningsdata i MySQL

Du kan också ersätta vyn med SKAPA ELLER ERSÄTT påstående. Detta kommer att ersätta SQL-frågan för visning.

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 |
+------------+------------+----------+

Du kan också skapa vy i MySQL med JOIN. Här är ett exempel

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 |
+------------+----------+----------+

Hur man släpper View i MySQL

Så här släpper du vy i MySQL, om du inte behöver det. Här är syntaxen

DROP VIEW view_name;

Här är ett exempel

DROP VIEW order_view;

Det är allt! Nu kan du enkelt skapa MySQL-vy och använda den för dataanalys och rapportering.

Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!

  1. Oracle SQL Developer - Hur man återställer tappad tabell

  2. SQL Server *=Operatör?

  3. Finns det något sätt att bädda in power bi-rapporter och instrumentpaneler i vb.net- eller C#-skrivbordsapplikationer med sql server 2008-databas?

  4. Mysql sträng delad