Cómo usar vistas materializadas de PostgreSQL

Cómo usar vistas materializadas de PostgreSQL

Las vistas en PostgreSQL son tablas gráficas que muestran datos de las tablas correspondientes. Las vistas comunes también se pueden modificar. PostgreSQL lleva el concepto de vistas a la siguiente etapa al permitir que las vistas almacenen información materialmente, denominadas vistas materializadas. Una vista materializada preserva la salida de una consulta complicada y de consumo de tiempo, lo que le permite consultar los resultados rápidamente en cualquier momento. Los puntos de vista materializados se utilizan con frecuencia en almacenes de datos y aplicaciones de inteligencia empresarial porque son útiles en situaciones que requieren acceso rápido a los datos.

Por qué usar vistas materializadas?

Si el comando de vista es demasiado lento para usted, es posible que prefiera usar una vista materializada. Las vistas materializadas tienen mucha versatilidad al permitirle retener una representación materialmente en la base de datos con tiempos de acceso más cortos. Supongamos que debe crear una consulta de base de datos para unirse a algunas tablas, eliminar filas de la colección sindicalizada y ordenar las tablas de varias maneras. Esta podría ser una consulta complicada y que consume mucho tiempo, y sin vistas materializadas, terminará usando una vista materializada para abordar este dilema. Este artículo le enseña cómo usar las opiniones materializadas en PostgreSQL.

Sintaxis

>> Crear vista materializada View_name como consulta con datos [no];

La explicación de esta visión general es la siguiente:

  • View_name: El título de la vista que se creará con la declaración Crear vista materializada.
  • Consulta: La consulta que obtiene los datos de las tablas correspondientes.
  • Con [no] datos: Elija la opción Con datos para incorporar datos de información en la vista materializada en el momento del desarrollo; De lo contrario, elija sin datos. La vista se marca como incomprensible si usa la opción de datos con [no], lo que implica que no podrá buscar información desde la vista a menos que haya cargado datos en ella primero.

Cómo usar vistas materializadas

Inicie su shell de línea de comandos PostgreSQL para comenzar a trabajar en vistas materializadas.

Proporcione el nombre del servidor, la base de datos en la que desea trabajar, el número de puerto y el nombre de usuario para comenzar a usar el shell de comando. Deje estos espacios vacíos si desea usar el sistema predeterminado.

Ejemplo 1: Vista simple

Para comprender la vista materializada, primero debe comprender las vistas simples. Entonces, cree la nueva tabla, 'Estudiante', usando el comando Crear tabla, según lo adjunto.

>> Crear estudiante de tabla (clave primaria de serie SID, Sname Varchar (100) no nulo, edad varchar (100) no nula);

Después de eso, inserte datos en él utilizando la consulta de inserción.

Obtenga los registros de la tabla 'estudiante' utilizando la instrucción Seleccionar para la vista simple.

>> seleccionar * del estudiante;

Ejemplo 2: Vista materializada simple

Ahora, es hora de cubrir la vista materializada. Usaremos la tabla 'estudiante' para crear una vista materializada. Crearemos una vista materializada llamada 'std_view' utilizando el comando 'Crear vista materializada'. Desde este punto de vista, obtendremos el campo de nombre del estudiante 'Sname' de la tabla 'Estudiante', agrupada y ordenada en orden ascendente en la columna 'Sname'.

>> Crear vista materializada std_view como seleccionar Sname del grupo de estudiantes por orden de sname by sname;

Ahora, utilizando la consulta de selección para ejecutar la vista, devolveremos los nombres de los estudiantes en la columna 'sname' de la tabla 'estudiante'.

>> seleccionar * de std_view;

Ejemplo 3: Vista materializada utilizando Where Cláusula

Ahora, crearemos una vista materializada utilizando la cláusula WHERE. Considere la siguiente tabla de 'alumno' con algunos cambios en sus valores.

Luego, crearemos una vista materializada llamada 'teststd' utilizando la consulta 'Crear vista materializada'. Seleccionaremos los registros de la tabla 'estudiante' donde el valor de la columna 'edad' es mayor que '25' utilizando la cláusula WHERE. La consulta funciona correctamente, como se ve en la imagen.

>> Crear vista materializada TestStd como selección Sid, Sname, Edad del Estudiante donde Edad> '25';

Finalmente, ejecutaremos la vista materializada que acabamos de crear utilizando el comando SELECT, como se muestra a continuación. Verá que devolverá todos los registros de la tabla 'estudiante' en la que la columna 'edad' tiene un valor de mayor que '25.'

>> seleccionar * de teststd;

Ejemplo 4: actualizar la vista materializada utilizando sin cláusula de datos

En este ejemplo, crearemos una vista materializada, en la que utilizaremos la cláusula sin datos para actualizar la vista. Suponga que la siguiente tabla 'estudiante' con algunas alteraciones en sus valores.

Ahora crearemos la vista materializada 'teststd'. Esta vista seleccionará los registros de la tabla 'estudiante' en la que la edad de los estudiantes es inferior al '40.'Los registros obtenidos se agruparán y clasificarán de acuerdo con el orden ascendente en la columna' Sid '. Al final de la consulta, utilizaremos la cláusula sin datos sin datos para indicar que la consulta no guardará ninguna información en una vista materializada. La vista que se muestra a continuación debe realizar con éxito estas acciones.

>> Crear vista materializada TestStd como selección Sid, Sname, edad del estudiante donde la edad < '40' GROUP BY sid ORDER BY sid WITH NO DATA;

Cuando agrega la cláusula 'sin datos' a una vista materializada, esto crea una en blanco. Esta vista materializada no se puede consultar. Como puede ver en la siguiente imagen, no está obteniendo los registros en la vista recién creada.

La instrucción de vista materializada de actualización se utiliza para importar los datos en una vista materializada. Complete la vista materializada ejecutando la siguiente consulta de vista materializada en la carcasa. Como puede ver, esta consulta ha funcionado de manera efectiva.

>> Actualizar la vista materializada TestStd;

Nuevamente, obtenga los registros de la vista materializada 'teststd' utilizando la instrucción Seleccionar en el shell. Esta vez, la consulta de selección funciona correctamente porque la instrucción 'actualizar' ha cargado el contenido en la vista materializada.

Ejemplo 5: Vista materializada de caída

El siguiente comando eliminará una vista materializada.

>> Drop materializado Vista std_view;

Conclusión

Este artículo le mostró cómo usar vistas materializadas a través de la cláusula WHERE y actualizar las consultas en el shell de la línea de comandos.