DAA-C01 Question 204
Single answerCreate a reusable filterA Snowflake analyst builds a Snowsight worksheet used by multiple business users to review quarterly sales performance. The users repeatedly need to limit results to the same set of conditions: REGION = 'EMEA', SALES_CHANNEL IN ('ONLINE','PARTNER'), and ORDER_DATE within the current quarter. The analyst wants a solution that lets these conditions be defined once and then applied consistently across future queries in the worksheet without retyping the predicate each time. Which approach best meets this requirement?
- A
Create a reusable filter in Snowsight with the required conditions, then apply that saved filter to subsequent worksheet queries as needed.
- B
Create a masking policy on REGION, SALES_CHANNEL, and ORDER_DATE so that all worksheet queries automatically return only rows matching those values.
- C
Define a session variable containing the full WHERE clause text and reference the variable directly in every SQL statement without dynamic SQL.
- D
Create a new warehouse dedicated to EMEA sales analysis so users can run the same filter logic more efficiently.
Show answer and explanation
Correct answer: A
Explanation
The best answer is to create a reusable filter in Snowsight. In worksheet-driven analysis, reusable filters are designed to help analysts save commonly used filter logic and apply it consistently across future work, which is especially helpful for recurring business slices such as region, channel, and date range. This is more maintainable and less error-prone than repeatedly rewriting WHERE clauses. By contrast, masking policies address data privacy, warehouses address compute, and session variables are not an ideal mechanism for reusable worksheet filter predicates. This aligns with Snowsight best practices for interactive analysis and reuse of common filtering criteria.
- A. Correct.
Correct. A reusable filter in Snowsight is intended for exactly this use case: defining filter criteria once and reapplying them across worksheet queries or result explorations. This improves consistency, reduces repeated manual edits, and lowers the chance of users applying slightly different predicates when analyzing the same business slice.
- B. Incorrect.
Incorrect. Masking policies are data protection features used to redact or transform sensitive column values at query time based on policy logic and role context. They do not function as analyst-defined reusable row filters for ad hoc analysis. Someone might choose this option because it sounds like a centrally managed way to constrain output, but masking policies are not the right feature for reusable business filtering.
- C. Incorrect.
Incorrect. Session variables can store scalar values, but they are not a straightforward mechanism for storing and directly injecting an entire WHERE clause into ordinary SQL statements. Reusing a full predicate this way would typically require dynamic SQL or procedural logic, making it less suitable and less user-friendly for worksheet-based analysis. This option reflects a common misconception that variables can be substituted anywhere in SQL syntax as text fragments.
- D. Incorrect.
Incorrect. Warehouses provide compute resources and affect performance and concurrency, not logical filtering behavior. Creating a dedicated warehouse does nothing to define or enforce reusable row-level conditions. This distractor targets the misconception that compute configuration can solve semantic query-authoring problems.