Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak zaktualizować widok w MySQL

Widoki SQL oferują większe bezpieczeństwo i prostotę w stosunku do tabel danych. W rzeczywistości możesz łatwo aktualizować widok w SQL na wiele sposobów. Oto kroki, aby zaktualizować widok w MySQL.

Jak zaktualizować widok w MySQL

Oto jak zaktualizować widok w MySQL. Istnieje wiele sposobów aktualizowania widoku w SQL. Możesz zaktualizować zapytanie lub dane widoku SQL. Przyjrzymy się każdemu z tych sposobów aktualizacji widoku w MySQL.

Załóżmy, że masz następujący widok 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 |
+------------+----------+

Przeczytaj bonus:Jak utworzyć widok w MySQL

Jak zaktualizować widok w MySQL za pomocą instrukcji ALTER

Możesz zaktualizować widok w MySQL za pomocą ALTER oświadczenie. Spowoduje to zastąpienie zapytania SQL dla widoku, a nie danych źródłowych.

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

Przeczytaj bonus:Jak uzyskać łączną liczbę użytkowników w MySQL

Jak zaktualizować widok w MySQL za pomocą CREATE OR REPLACE

Możesz także zaktualizować widok w MySQL za pomocą CREATE OR REPLACE oświadczenie. Spowoduje to zastąpienie zapytania SQL dla widoku, a nie danych źródłowych.

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

Przeczytaj bonus:Jak zdobywać nowych użytkowników dziennie w MySQL

Jak zaktualizować widok w MySQL za pomocą UPDATE

Można również zaktualizować dane źródłowe widoku SQL za pomocą instrukcji UPDATE. Nie zaktualizuje to zapytania SQL widoku, ale rzeczywiste dane tabeli.

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

Przeczytaj bonus:Jak obliczyć przychody w MySQL

Instrukcja UPDATE działa w widokach SQL tylko wtedy, gdy stanowią one bezpośredni podzbiór danych tabeli, bez żadnej agregacji ani modyfikacji. Możesz więc użyć instrukcji UPDATE na widokach, jeśli instrukcja SELECT do widoku :

  • Nie ma funkcji DISTINCT, GROUP BY, HAVING, Aggregations, SET ani operatorów
  • Nie odnosi się do wielu tabel
  • Nie ma kolumn obliczeniowych

Otóż ​​to! Teraz możesz łatwo zaktualizować widok MySQL i używać go do analizy danych i raportowania.

Ubiq ułatwia wizualizację danych w ciągu kilku minut i monitorowanie w pulpitach nawigacyjnych w czasie rzeczywistym. Wypróbuj już dziś!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak połączyć się z bazą danych MySQL w Pythonie?

  2. zaktualizuj wartości kolumn z kolumną innej tabeli na podstawie warunku

  3. MySQL:wybierz wszystkie daty w zakresie, nawet jeśli nie ma żadnych rekordów

  4. CURRENT_DATE/CURDATE() nie działa jako domyślna wartość DATE

  5. Wizualne tworzenie baz danych za pomocą MySQL Workbench