1
resposta

Diferença entre View e criação de tabela com SELECT

Qual a diferença entre criar uma view do Select e criar uma tabela nova com o Select?

1 resposta

Na minha opinião a view foi criada para gravar um select complexo, que mescla tabelas diferentes e que sera consultado com certa frequência.

Vou dar um exemplo de uma que uso para contextualizar:

select `embarque`.`fila_embarque`.`placa` AS `placa`,`embarque`.`fila_embarque`.`grupo` AS `grupo`,`embarque`.`fila_embarque`.`embarque` AS `embarque`,`embarque`.`fila_embarque`.`dt_chegada` AS `dt_chegada`,`embarque`.`fila_embarque`.`h_chegada` AS `h_chegada`,`embarque`.`fila_embarque`.`seq_chegada` AS `seq_chegada`,`embarque`.`fila_embarque`.`usuario_chegada` AS `usuario_chegada`,`embarque`.`fila_embarque`.`status_cheklist` AS `status_cheklist`,`embarque`.`fila_embarque`.`usuario_cheklist` AS `usuario_cheklist`,`embarque`.`fila_embarque`.`dt_entrada_embarque` AS `dt_entrada_embarque`,`embarque`.`fila_embarque`.`h_entrada_embarque` AS `h_entrada_embarque`,`embarque`.`fila_embarque`.`usuario_entrada_embarque` AS `usuario_entrada_embarque`,`embarque`.`fila_embarque`.`dt_ini_envelopamento` AS `dt_ini_envelopamento`,`embarque`.`fila_embarque`.`h_ini_envelopamento` AS `h_ini_envelopamento`,`embarque`.`fila_embarque`.`usuario_ini_envelopamento` AS `usuario_ini_envelopamento`,`embarque`.`fila_embarque`.`dt_fim_envelopamento` AS `dt_fim_envelopamento`,`embarque`.`fila_embarque`.`h_fim_envelopamento` AS `h_fim_envelopamento`,`embarque`.`fila_embarque`.`usuario_fim_envelopamento` AS `usuario_fim_envelopamento`,`embarque`.`fila_embarque`.`dt_saida_embarque` AS `dt_saida_embarque`,`embarque`.`fila_embarque`.`h_saida_embarque` AS `h_saida_embarque`,`embarque`.`fila_embarque`.`usuario_saida_embarque` AS `usuario_saida_embarque`,`embarque`.`fila_embarque`.`dt_nfe` AS `dt_nfe`,`embarque`.`fila_embarque`.`h_nfe` AS `h_nfe`,`embarque`.`fila_embarque`.`usuario_nfe` AS `usuario_nfe`,`embarque`.`fila_embarque`.`dt_cte` AS `dt_cte`,`embarque`.`fila_embarque`.`h_cte` AS `h_cte`,`embarque`.`fila_embarque`.`usuario_cte` AS `usuario_cte`,`embarque`.`fila_embarque`.`dt_saida` AS `dt_saida`,`embarque`.`fila_embarque`.`h_saida` AS `h_saida`,`embarque`.`fila_embarque`.`usuario_saida` AS `usuario_saida`,`embarque`.`fila_embarque`.`observacao` AS `observacao`,`embarque`.`fila_embarque`.`com_cancelamento` AS `com_cancelamento`,group_concat(distinct `embarque`.`fila_embarque`.`programacao` separator ',') AS `PROGRAMACOES` from `embarque`.`fila_embarque` group by `embarque`.`fila_embarque`.`placa`,`embarque`.`fila_embarque`.`embarque`

agora toda consulta que quero ver esses campos eu simplesmente digito, ou implemento essa view :

SELECT * FROM `prog_carregamento_agupadas`

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software