db.table? Я понимаю что в одном случае создается кэш-таблица на диске, а в другом не создается. А еще какие-нибудь различия есть? Зачем вообще может понадобиться популейтед таблица в матвью? Это чтобы выгребать данные с нод кластера или есть смысл такое мутить даже если табличка "локальная"?
TO появилось сильно позже. Изначально его не было и просто создавалась таблица под mview со специальным именем.
написано же все в доке? без populate -- MV увидит данные только от новых инсертов populate -- заполнить MV данными из основной таблицы без TO -- MV создаст таблицу в которой будут хранится ее данные самостоятельно и назовет эту свою таблицу .inner.mvname c TO -- мы сами создали таблицу в которой будут хранится данные MV populate и TO несовместимы, это недоделка в MV можно делать инсерты, и заполнять ее как угодно без использования populate optimize_move_to_prewhere не работает если делать запросы к MV, поэтому MV без TO теряют смысл (или делать селекты к .inner.mvname вручную, что полный бред)
Обсуждают сегодня