Mysql
 sql >> Base de données >  >> RDS >> Mysql

Mysql - EXPLAIN SELECT à partir d'une vue recherche dans toutes les lignes de la table principale

Parce qu'une vue n'est pas précompilée requête ou un résultat stocké , c'est un prédéfini requête. Il exécute les instructions SELECT dans la vue, à chaque fois . Sinon, une vue ne serait jamais mise à jour. Une vue est une représentation d'une requête. C'est un raccourci pratique pour le programmeur, mais pas pour la machine.

En d'autres termes, lorsque vous

SELECT something FROM YourView

Et YourView est défini par

CREATE VIEW YourView AS SELECT stuff FROM sometable 
INNER JOIN othertable ON sometable.column = othertable.column

ce qui est réellement exécuté est

 SELECT something FROM 
(SELECT stuff FROM sometable 
INNER JOIN othertable ON sometable.column = othertable.column)

Si vous souhaitez stocker un résultat, vous devez utiliser une table agrégée.