En este artículo, discutiremos cómo podemos crear una vista materializada basada en un problema particular y también cubriremos el ejemplo del mismo. Vamos a discutir uno por uno.
Requisito previo : vista materializada
En esto, verá cómo puede crear la vista materializada basada en la definición de la tabla. Entendamos esto usando los siguientes pasos que se detallan a continuación.
Creando la definición de la tabla:
Ahora, para comprender los escenarios, considere un ejemplo donde cricket_team es un nombre de tabla y team_name, team_match_wins, team_match_losses y team_match_ties son los campos.
CREATE TABLE cricket_team ( team_name text primary key, team_match_wins int, team_match_losses int, team_match_ties int );
Inserción de datos en la tabla:
Ahora, verá la consulta CQL para insertar algunas filas para la tabla creada anteriormente.
Insert into cricket_team( team_name, team_match_wins, team_match_losses, team_match_ties) values ('IN' , 100, 5, 5); Insert into cricket_team( team_name, team_match_wins, team_match_losses, team_match_ties) values ('NZ' , 80, 5, 2); Insert into cricket_team( team_name, team_match_wins, team_match_losses, team_match_ties) values ('AUS' , 80, 4, 5); Insert into cricket_team( team_name, team_match_wins, team_match_losses, team_match_ties) values ('PAK' , 70, 8, 5); Insert into cricket_team( team_name, team_match_wins, team_match_losses, team_match_ties) values ('ENG' , 60, 9, 5);
Verificando datos:
Ahora, para verificar los datos insertados anteriormente, puede usar la siguiente consulta CQL.
select * from cricket_team;
Producción :
nombre del equipo | team_match_losses | team_match_ties | team_match_wins |
---|---|---|---|
paquete | 8 | 5 | 70 |
EN | 5 | 5 | 100 |
Australia | 4 | 5 | 80 |
Nueva Zelanda | 5 | 2 | 80 |
ESP | 9 | 5 | 60 |
Ejemplo –
Ahora, si desea realizar una consulta de la siguiente manera.
select * cricket_team_by_team_match_wins where team_match_wins = 100;
Nota –
Los campos de clave principal no pueden ser NULL, la cláusula WHERE debe incluir una verificación NULL. Dado que la cláusula WHERE en SELECT se basa en team_match_wins, team_match_wins debe ser la clave de partición.
Creación de una vista materializada:
Ahora, si ejecuta esta consulta obtendrá un error porque no hay una tabla con el nombre cricket_team _by_ team_match_wins. Entonces, primero, puede crear una vista materializada usando la siguiente consulta CQL.
create materialized view if not exists cricket_team_by_team_match_wins As select * from cricket_team where team_match_wins IS NOT NULL AND team_name IS NOT NULL primary key((team_match_wins),team_name);
Ejecutando la consulta:
Ahora, si ejecuta la consulta que se indica a continuación, se ejecutará con éxito.
select * cricket_team_by_team_match_wins where team_match_wins = 100;
Producción :
team_match_wins | nombre del equipo | team_match_losses | team_match_ties |
---|---|---|---|
100 | EN | 5 | 5 |
Publicación traducida automáticamente
Artículo escrito por Ashish_rana y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA