sql >> Databáze >  >> RDS >> Mysql

Jak vytvořit pohled MySQL

SQL pohledy představují podmnožinu dat v databázi, nabízejí lepší zabezpečení a jednoduchost pro analýzu dat a reportování. Zde je návod, jak vytvořit pohled MySQL pro ukládání dotazů, které jsou dynamicky spouštěny za účelem generování výsledků, namísto ukládání skutečných dat.

Jak vytvořit zobrazení MySQL

Zde jsou kroky k vytvoření pohledu MySQL.

SQL pohledy jsou v podstatě uložené SQL dotazy, kterým byl přiřazen název „pohled“. Když přistoupíte k zobrazení SQL, jejich dotaz se spustí dynamicky, aby vrátil sadu výsledků.

Pohledy SQL ve skutečnosti neobsahují žádná data, ale pouze uložený dotaz a zabírají velmi málo místa.

Bonusové čtení:Jak získat celkový počet uživatelů za den v MySQL

Jaká jsou použití zobrazení SQL

Zde jsou klíčová použití zobrazení SQL

  • Přehledy – Pohledy SQL představují pouze podmnožinu dat. Lze je tedy použít k vytváření tabulek přehledů pro analýzu dat
  • Zabezpečení – Pro lepší zabezpečení se používají pohledy SQL. Můžete bezpečně poskytnout uživateli přístup k zobrazením namísto podkladových tabulek
  • Jednoduchost – Pomocí spojení můžete vytvořit jeden pohled z více tabulek. Uživatelé tak mohou snadno přistupovat k datům, aniž by znali základní schéma databáze.

Bonusové čtení:Jak získat nové uživatele za den v MySQL

Jaké jsou výhody zobrazení v SQL

Zde jsou některé z výhod zobrazení v SQL:

  1. Zobrazení představuje virtuální tabulku, nikoli skutečnou tabulku. Nezabírají tedy žádné místo kromě uloženého SQL dotazu
  2. Pomocí zobrazení můžete získat podmnožinu tabulkových dat a omezit vystavení uživatelů podkladovým datům
  3. Podobně můžete vytvořit zobrazení MySQL s agregovanými daty (např. součet, počet atd.)
  4. Můžete vytvořit vlastní pohledy, které obsahují data z více tabulek, souhrnů, oddílů nebo dokonce vypočítaných dat, aniž byste museli upravovat podkladová data.

Bonusové čtení:Jak vypočítat výnosy v MySQL

Jak vytvořit zobrazení MySQL

Je velmi snadné vytvořit pohled v MySQL. Základní syntaxe pro vytvoření pohledu v MySQL je

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

Řekněme, že máte tabulku objednávky (datum_objednávky, id_produktu, množství)

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

Řekněme, že chcete vytvořit pohled MySQL (např. order_view), který zobrazuje pouze datum objednávky a množství. Zde je dotaz SQL k vytvoření zobrazení

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

Nyní můžete dotazovat tento pohled stejně jako normální tabulku.

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

Bonusové čtení:Jak získat údaje o prodeji za poslední 3 měsíce v MySQL

Zobrazení můžete také nahradit pomocí VYTVOŘIT NEBO NAHRADIT prohlášení. Tím se nahradí dotaz SQL pro zobrazení.

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

Můžete také vytvořit pohled v MySQL pomocí JOIN. Zde je příklad

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

Jak zrušit zobrazení v MySQL

Zde je návod, jak zrušit zobrazení v MySQL, pokud jej nepotřebujete. Zde je syntaxe

DROP VIEW view_name;

Zde je příklad

DROP VIEW order_view;

A je to! Nyní můžete snadno vytvořit zobrazení MySQL a použít jej pro analýzu dat a vytváření sestav.

Ubiq usnadňuje vizualizaci dat během několika minut a sledování na řídicích panelech v reálném čase. Vyzkoušejte to ještě dnes!

  1. Svatý grál čištění vstupu a výstupu v php?

  2. COUNT(*) z více tabulek v MySQL

  3. Vypočítat max. součtu anotovaného pole nad seskupeným dotazem v Django ORM?

  4. Jak se připojit k SQL Serveru s ověřováním Windows z Node.JS pomocí modulu mssql