Reviewed by Aditya Kumar · Last reviewed 2026-03-24
CREATE MATERIALIZED VIEW mv_sales_agg AS SELECT region, product, SUM(amount) FROM sales GROUP BY region, product; **Refresh**: REFRESH MATERIALIZED VIEW mv_sales_agg; **Incremental**: Some systems (Snowflake, Delta) support incremental. **Schedule**: Cron or dbt. **Trade-off**:...
CREATE MATERIALIZED VIEW mv_sales_agg AS SELECT region, product, SUM(amount) FROM sales GROUP BY region, product; Refresh: REFRESH MATERIALIZED VIEW mv_sales_agg; Incremental: Some systems (Snowflake, Delta) support incremental. Schedule: Cron or dbt. Trade-off: Refresh cost vs. query savings. Concurrent: REFRESH CONCURRENTLY (PostgreSQL) for no lock.
Red Flag: Full refresh during business hours—locks. Pro-Move: 'We refresh at 2am; CONCURRENTLY in Postgres—zero query blocking; 50× faster dashboard loads.'
According to DataEngPrep.tech, this is one of the most frequently asked SQL interview questions, reported at 1 company. DataEngPrep.tech maintains an editor-reviewed database of 1,863 data engineering interview questions across 7 categories.