Short: A View can cache the results if you apply an index for future queries which leads to improved performance for subsequent requests. Otherwise, a View is just an alias for regular-SQL query.
Check out these posts to understand why a View is faster than a plain-SQL query:
sql - Is a view faster than a simple query? - Stack Overflow[
^]
database - Performance of VIEW vs. SQL statement - Stack Overflow[
^]
indexing - How do I get MySQL to use an INDEX for view query? - Stack Overflow[
^] (definitely read this one!)
It all boils down to whether the View you are creating/using/executing is being indexed or not. If you are not using any indexes, and are plain-old-executing the query, then a View is likely to be an alias for the SQL query, only. The performance part comes, when you handle the indexes on the view and let MySQL reuse the results from previous queries.