sql >> Base de Datos >  >> RDS >> Mysql

Cómo actualizar la vista en MySQL

Las vistas SQL ofrecen más seguridad y simplicidad sobre las tablas de datos. De hecho, puede actualizar fácilmente la vista en SQL de varias maneras. Estos son los pasos para actualizar la vista en MySQL.

Cómo actualizar la vista en MySQL

Aquí se explica cómo actualizar la vista en MySQL. Hay varias formas de actualizar la vista en SQL. Puede actualizar la consulta o los datos de una vista SQL. Veremos cada una de estas formas de actualizar la vista en MySQL.

Supongamos que tiene la siguiente vista 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 |
+------------+----------+

Lectura adicional:Cómo crear una vista en MySQL

Cómo actualizar la vista en MySQL usando la instrucción ALTER

Puede actualizar la vista en MySQL usando ALTER declaración. Esto reemplazará la consulta SQL para la vista, no los datos subyacentes.

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

Lectura adicional:Cómo obtener usuarios totales acumulados en MySQL

Cómo actualizar la vista en MySQL usando CREAR O REEMPLAZAR

También puede actualizar la vista en MySQL usando CREAR O REEMPLAZAR declaración. Esto reemplazará la consulta SQL para la vista, no los datos subyacentes.

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

Lectura adicional:Cómo obtener nuevos usuarios por día en MySQL

Cómo actualizar la vista en MySQL usando UPDATE

También puede actualizar los datos subyacentes de una vista SQL mediante la instrucción UPDATE. Esto no actualizará la consulta SQL de la vista, sino los datos reales de la tabla.

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

Lectura adicional:Cómo calcular los ingresos en MySQL

La declaración UPDATE funciona en las vistas SQL solo si son un subconjunto directo de los datos de la tabla, sin ninguna agregación ni modificación. Entonces puede usar la instrucción UPDATE en las vistas si la instrucción SELECT para la vista:

  • No tiene funciones u operadores DISTINCT, GROUP BY, HAVING, Agregaciones, SET
  • No hace referencia a varias tablas
  • No tiene columnas calculadas

¡Eso es todo! Ahora puede actualizar fácilmente la vista de MySQL y usarla para análisis de datos e informes.

Ubiq facilita la visualización de datos en minutos y la supervisión en paneles en tiempo real. ¡Pruébalo hoy!