An analyst wants to create a view named `main.sales.high_value` that returns only rows from `main.sales.orders` where `total_amount > 1000`, and wants the view to reflect future updates to the base table automatically. Which statement should the analyst run?
A standard CREATE VIEW stores only the SQL definition, and each query re-executes it against the base table, so results always reflect the latest committed data. This matches the requirement for a live, filtered projection without storage or refresh overhead. The view inherits access through the base table, so the analyst needs SELECT on the orders table.
Why this answer
Because the analyst wants results that always reflect the current state of the base table, a standard view is correct. A view persists only the query definition, and Databricks re-evaluates it on every read, so inserts or updates to the orders table appear immediately. Materialized views cache results and need refreshes, while temporary views vanish at session end, so neither matches the persistent, always-current requirement.
Exam trap
The trap here is confusing materialized views, which cache results and require refresh, with standard views that always read live data.