A voir les réponses, certains disent que :

  • OUI une vue est plus rapide qu'une simple requête
  • NON une vue n'est pas plus rapide qu'une simple requête

Personnellement, je dirais que c'est pareil, la vue MySQL n'est ni plus lente, ni plus rapide que la même requête en dehors de la vue.

Par contre la vue à des contraintes :

  • L'instruction SELECT ne peut pas contenir une sous-requête dans la clause FROM.
  • L'instruction SELECT ne peut pas se référer au système ou des variables utilisateur.
  • Dans un programme stocké, la définition ne peut pas se référer aux paramètres du programme ou des variables locales.
  • L'instruction SELECT ne peut pas se référer à des paramètres d'instruction préparés.
  • Toute table ou une vue visé dans la définition doit exister. Cependant, après un point de vue a été créé, il est possible de supprimer une table ou vue que la définition se réfère. Dans ce cas, l'utilisation des résultats de la vue dans une erreur. Pour vérifier la définition d'une vue pour des problèmes de ce genre, utilisez l'instruction CHECK TABLE.
  • La définition ne peut pas se référer à une table temporaire, et vous ne pouvez pas créer une vue temporaire.
  • Les tables nommées dans la définition de la vue doit exister au moment de la définition.
  • Vous ne pouvez pas associer un déclencheur avec une vue
  • Depuis MySQL 5.1.23, des alias pour les noms de colonnes dans l'instruction SELECT sont vérifiées par rapport à la longueur de colonne maximum de 64 caractères (pas la longueur maximale d'alias de 256 caractères).

Ressources