Ответ 1
В принципе, в MySQL существует в основном 2 типы просмотров.
-
Объединить представления
Этот вид представления в основном просто перезаписывает ваши запросы с помощью представления SQL. Так что это короткая рука для написания запросов. Это не дает никаких реальных преимуществ для работы, но упрощает упрощение написания сложных запросов и упрощает техническое обслуживание (поскольку, если определение определения изменяется, вам не нужно изменять 100 запросов против представления, только одно определение).
-
Искушенные представления
Этот тип представления создает временную таблицу с запросом из представления SQL. Он имеет все преимущества представления слияния, но также уменьшает время блокировки в таблицах представлений. Поэтому на высоконагруженных серверах он может иметь довольно значительное увеличение производительности.
Также существует тип вида "Undefined" (по умолчанию), который позволяет MySQL выбрать то, что, по его мнению, является лучшим типом во время запроса...
Но обратите внимание на то, что важно отметить, что MySQL не имеет поддержки материализованных представлений. Поэтому он не похож на Oracle, где сложное представление значительно увеличивает производительность запросов. Запросы представлений всегда выполняются в MySQL.
Что касается эффективности, то представления в MySQL не повышают или не снижают эффективность. Они могут облегчить вашу жизнь при написании и поддержании запросов. Я использовал представления на таблицах с сотнями миллионов строк, и они отлично работали...