sql >> Database >  >> RDS >> Mysql

Hoe de weergave in MySQL te updaten

SQL-weergaven bieden meer veiligheid en eenvoud dan gegevenstabellen. U kunt de weergave in SQL zelfs op meerdere manieren eenvoudig bijwerken. Dit zijn de stappen om de weergave in MySQL bij te werken.

Hoe de weergave in MySQL bij te werken

Hier leest u hoe u de weergave in MySQL kunt bijwerken. Er zijn meerdere manieren om de weergave in SQL bij te werken. U kunt de query of gegevens van een SQL-weergave bijwerken. We zullen elk van deze manieren bekijken om de weergave in MySQL bij te werken.

Stel dat u de volgende weergave heeft order_view

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

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

Bonus lezen:weergave maken in MySQL

Hoe de weergave in MySQL bij te werken met behulp van de ALTER-instructie

U kunt de weergave in MySQL bijwerken met ALTER uitspraak. Dit vervangt de SQL-query voor weergave, niet de onderliggende gegevens.

mysql> alter view order_view as
       select order_date,quantity
       from orders
       where quantity>30;

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

Bonus lezen:cumulatief totaal aantal gebruikers in MySQL krijgen

De weergave in MySQL bijwerken met CREATE OR REPLACE

U kunt de weergave in MySQL ook bijwerken met CREATE OR REPLACE uitspraak. Dit vervangt de SQL-query voor weergave, niet de onderliggende gegevens.

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

Bonus lezen:nieuwe gebruikers per dag krijgen in MySQL

De weergave in MySQL bijwerken met UPDATE

U kunt ook de onderliggende gegevens van een SQL-view bijwerken met de instructie UPDATE. Hiermee wordt niet de SQL-query van de weergave bijgewerkt, maar de werkelijke tabelgegevens.

mysql> update order_view
       set quantity=50
       where order_date>'2020-05-03';

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 |       50 |
| 2020-05-04 |       50 |
+------------+----------+

Bonus Lezen:Hoe de inkomsten in MySQL te berekenen

UPDATE-instructie werkt alleen op SQL-views als ze een directe subset van tabelgegevens zijn, zonder enige aggregatie of wijziging. U kunt dus de UPDATE-instructie voor views gebruiken als de SELECT-instructie voor view:

  • Heeft geen DISTINCT, GROUP BY, HAVING, Aggregations, SET-functies of operators
  • Verwijst niet naar meerdere tabellen
  • Heeft geen berekende kolommen

Dat is het! Nu kunt u eenvoudig de MySQL-weergave bijwerken en gebruiken voor gegevensanalyse en rapportage.

Ubiq maakt het gemakkelijk om gegevens binnen enkele minuten te visualiseren en in realtime dashboards te controleren. Probeer het vandaag nog!

  1. Oracle- Split string door komma's gescheiden (string bevat spaties en opeenvolgende komma's)

  2. Eén record verwijderen uit Entity Framework?

  3. Hoe de grootste tabel in de MySQL-database te vinden?

  4. Oracle-taalparameters instellen voor DG4ODBC