As materialized views armazenam resultados de consultas pré-computados, o que torna as leituras mais rápidas do que consultar tabelas base diretamente. Use-as em consultas SQL da mesma forma que tabelas ou views padrão.
Pré-requisitos
Apenas a permissão SELECT na materialized view é necessária. A permissão SELECT nas tabelas base referenciadas pela materialized view não é obrigatória.
Para conceder a permissão SELECT em uma materialized view a um usuário, execute:
GRANT SELECT ON <mv_name> TO '<user>'@'%';
Substitua <mv_name> pelo nome da materialized view e <user> pelo nome do usuário de destino.
Consultar uma materialized view
A sintaxe para consultar uma materialized view é idêntica à de uma tabela ou view padrão. As materialized views aceitam toda a sintaxe SQL, incluindo SELECT, INSERT INTO SELECT e WITH.
Exemplo:
SELECT *
FROM adbview
WHERE device = 'PC'
AND city = 'Beijing';
Atualidade dos dados
As materialized views armazenam um snapshot dos dados no momento da última atualização. Se as tabelas base forem modificadas após essa atualização, a materialized view não refletirá essas alterações e os resultados da consulta poderão estar desatualizados.
Para obter os dados mais recentes, atualize a materialized view após cada modificação nas tabelas base antes de executar consultas. Consulte Atualizar uma materialized view.