Snowflake · DAA-C01
Validates advanced skills in applying comprehensive data analysis principles using Snowflake, including data ingestion, advanced SQL, UDFs, and predictive and diagnostic analytics. Requires 1+ years of hands-on Snowflake experience and an active SnowPro Core certification.
Practice Questions
600
≈ 6 practice exams
Duration
115 minutes
Passing Score
750/1000
Difficulty
ProfessionalLast Updated
Jun 2026
Use this DAA-C01 practice exam to prepare for SnowPro Advanced: Data Analyst (DAA-C01) with realistic questions, detailed explanations, and focused study modes. The practice bank includes 600 questions for Snowflake DAA-C01, so you can review the exam steadily instead of relying on one long cram session.
As you practice, pay extra attention to recurring topics such as Data Ingestion and Preparation, Data Transformation, Advanced SQL Query Development, Snowflake Built-in Functions and UDFs, and Descriptive and Diagnostic Data Analysis. Start with short sessions to identify weak areas, then move into timed quizzes once your accuracy is consistent.
The explanations are especially useful when you want to connect exam wording to the responsibilities and scenarios described in the official certification guidance. Use the free preview first, then unlock the full question bank when you are ready to build a complete study routine.
The SnowPro® Advanced: Data Analyst (DAA-C01) certification is Snowflake's advanced-tier credential for data professionals who apply comprehensive analytical techniques within the Snowflake Data Cloud. The exam validates expertise across the full analytical workflow: acquiring and loading structured, semi-structured, and unstructured data; transforming and preparing it for analysis; writing and optimizing complex SQL; leveraging Snowflake built-in functions and user-defined functions (UDFs); and performing descriptive, diagnostic, and predictive analytics to surface business insights.
Unlike entry-level Snowflake certifications, this exam expects candidates to demonstrate production-grade fluency with Snowflake-specific features such as Snowsight dashboards, Time Travel, semi-structured data handling (JSON, Parquet, Avro, ORC, XML), query optimization via partition pruning and materialized views, and integration with BI tools including Tableau, Looker, and Power BI. Delivered by Pearson VUE, the exam consists of 65 scored multiple-choice and multiple-select questions to be completed in 115 minutes, with a passing score of 750 on a scaled 0–1000 range. The registration fee is $375 USD per attempt (a 20% regional discount applies in India).
This certification is designed for working data professionals who spend the majority of their time querying, transforming, and analyzing data inside Snowflake. Relevant job titles include Data Analyst, Analytics Engineer, Business Intelligence Developer, ELT Developer, and BI Professional. Candidates typically have responsibility for building analytical pipelines, authoring complex SQL reports, creating dashboards in Snowsight or connected BI tools, and communicating data-driven findings to business stakeholders.
The exam is appropriate for those who have moved beyond foundational Snowflake usage and are ready to demonstrate advanced competency in forecasting, UDFs, and diagnostic analytics. It is not intended for platform administrators or data engineers focused primarily on infrastructure — those roles are better served by the SnowPro Advanced: Administrator or SnowPro Advanced: Data Engineer tracks.
Snowflake requires candidates to hold an active SnowPro Core Certification before sitting for the DAA-C01 exam. The SnowPro Core validates foundational knowledge of Snowflake architecture, data loading, querying, and account management, and its concepts are assumed knowledge for the advanced exam. There is no formal academic prerequisite, but Snowflake recommends candidates have at least one year of hands-on, production-level experience working as a Data Analyst in the Snowflake Data Cloud.
Beyond the formal requirement, candidates should be fluent in advanced SQL (window functions, CTEs, recursive queries, analytic functions) and have practical experience with at least one scripting or programming language for UDF development (Python, JavaScript, or Java are common choices). Familiarity with data modeling concepts, semi-structured data formats (JSON, Parquet), and at least one BI or visualization tool is strongly recommended before attempting the exam.
The DAA-C01 exam consists of 65 questions in multiple-choice (single correct answer) and multiple-select (two or more correct answers) formats. Candidates have 115 minutes to complete the exam. It is delivered online through Pearson VUE, which supports both remote proctored (OnVUE) and in-person testing center formats. The exam is currently offered in English only.
Scoring uses a scaled system ranging from 0 to 1000; a minimum scaled score of 750 is required to pass. Snowflake does not publish a fixed percentage-correct passing threshold, as the scaled score accounts for question difficulty. There is no published limit on retake attempts, and each attempt requires the full $375 USD registration fee. Snowflake recommends downloading the official exam study guide from the certification page prior to registration, as it contains the most current domain objectives and any updates to exam content.
Earning the SnowPro Advanced: Data Analyst credential signals to employers that a candidate can operate independently at an advanced level on the Snowflake platform — a differentiated skill as Snowflake's market share in the cloud data warehouse space continues to grow across financial services, retail, healthcare, and technology sectors. Job titles commonly held by certified candidates include Senior Data Analyst, Analytics Engineer, BI Engineer, and Data Scientist, with US salaries for Snowflake-proficient analysts typically ranging from $95,000 to $145,000 depending on seniority, industry, and location.
The DAA-C01 sits within Snowflake's Advanced certification tier, positioning it above the SnowPro Core and SnowPro Associate credentials and alongside other Advanced specializations (Data Engineer, Architect, Administrator). Unlike vendor-neutral analytics certifications, the DAA-C01 directly validates platform-specific expertise that many employers explicitly list as a job requirement when Snowflake is the primary data platform. Holding both the SnowPro Core and an Advanced specialization is increasingly recognized as a strong signal of job-ready Snowflake proficiency in competitive data hiring pipelines.
5 sample questions with answers and explanations. The full bank has 600 questions, enough for 6 full-length practice exams.
Preview — answers shown1. A data analyst at Northwind Pharmaceuticals runs frequent point-lookup queries against a 600-million-row CLINICAL_TRIALS table, always filtering on exact TRIAL_ID equality predicates. Each query returns between 1 and 3 matching rows but currently takes 25 to 30 seconds because Snowflake scans the entire table. The team needs sub-second response times for these equality lookups with minimal ongoing operational maintenance. Which approach is MOST appropriate? (Select one!)
Explanation
The Search Optimization Service is specifically engineered for point-lookup queries that use equality predicates and return a small number of rows from large tables. It builds a persistent search access path that allows Snowflake to identify the exact micro-partitions containing the target TRIAL_ID values without scanning the full 600-million-row table, enabling sub-second latency. The service is available on Enterprise Edition and above and is enabled per-table or per-column with ALTER TABLE. Increasing warehouse size provides more parallel compute nodes to finish a full-table scan faster, but does not eliminate the scan itself, so it cannot achieve sub-second performance on a 600-million-row table. Clustering keys optimize range-scan queries on sequentially ordered data and are most effective when many micro-partitions are pruned across a range; single equality point-lookups returning 1-3 rows benefit less from clustering than from the Search Optimization Service. Manual table partitioning is not a native Snowflake construct, introduces significant maintenance complexity, and would require application-layer query routing logic.
2. A query performance team at Fabrikam Insurance is investigating slow response times on a 3 TB CLAIMS table. Business analysts frequently search for individual claims using equality filters on claim_id or policy_number, retrieving only a few rows each time. Increasing warehouse size has not resolved the problem because the bottleneck is Snowflake scanning the majority of micro-partitions for every point-lookup query. The team must improve these equality-based lookups without increasing warehouse size or enabling full table automatic reclustering. Which Snowflake feature should they enable? (Select one!)
Explanation
The Search Optimization Service is specifically designed to accelerate point-lookup queries — those that filter on equality conditions and return a small number of rows from a very large table. It creates and automatically maintains a persistent search access path that functions similarly to an index, allowing Snowflake to identify and read only the micro-partitions relevant to a given equality predicate rather than performing a full table scan. The service is available on Enterprise Edition and above. Multi-cluster warehouses in Maximized mode address concurrency and queue depth, not the per-query micro-partition scanning inefficiency described here. The result set cache benefits only exact repeating queries; each analyst querying a different claim_id or policy_number produces a unique query that generates a cache miss, so the cache provides no relief for this workload pattern. Materialized views have restrictions including limited join support and are designed for pre-aggregated analytical patterns, not point-lookup acceleration on equality columns in a large fact table.
3. A data analyst at Tailspin Toys is profiling customer purchasing behavior. She writes the following query to retrieve the most recent purchase amount for each customer within an ordered window: SELECT customer_id, purchase_date, amount, LAST_VALUE(amount) OVER ( PARTITION BY customer_id ORDER BY purchase_date ) AS last_purchase_amount FROM purchases; After running the query, she finds that last_purchase_amount equals the current row's amount for every row instead of the final purchase amount within each customer's purchase history. What is the root cause of this behavior, and what is the correct fix? (Select one!)
Explanation
The root cause is the default window frame behavior when ORDER BY is present without an explicit frame clause. Snowflake defaults to RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW, which means LAST_VALUE can only see rows from the start of the partition up to and including the current row. Under this frame, LAST_VALUE always returns the current row's value because the current row is the last row within the visible frame. To retrieve the true final value in the partition, the analyst must explicitly override the frame to ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING, which expands the window to include all rows in the partition regardless of the current row position. Changing the sort order to DESC does not fix the frame boundary behavior; LAST_VALUE would still return the current row as the last row within the shrunken default frame. NTH_VALUE cannot accept COUNT(*) as a dynamic position argument within the OVER clause. A ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING frame defines a three-row sliding window and is unrelated to the default frame behavior described here.
4. A data engineer at Litware Inc. is designing a recursive CTE in Snowflake to traverse an EMPLOYEES table (employee_id, name, manager_id) and compute each employee's depth level in the management hierarchy, starting from the CEO whose manager_id is NULL. The engineer wants to confirm which rules govern recursive CTE behavior in Snowflake before writing the query. Which two statements about recursive CTEs in Snowflake are correct? (Select two!)
Multiple correct answersExplanation
Only UNION ALL is permitted to combine the anchor and recursive members in a Snowflake recursive CTE; UNION is not supported. The recursive member is also strictly constrained to projections, joins, and filters — aggregate functions, window functions, GROUP BY, ORDER BY, LIMIT, and DISTINCT are all prohibited because these operations prevent the iterative row-by-row traversal that recursion requires. The RECURSIVE keyword in Snowflake is optional (the syntax is WITH [ RECURSIVE ]), meaning Snowflake infers recursive processing automatically from the self-referential structure, similar to many other SQL dialects. Column data types are established by the anchor member's SELECT list, not the recursive member — this guarantees type stability across all recursive iterations. The recursive member may reference the recursive CTE exactly once per query block; multiple self-references within a single recursive clause are not permitted.
5. A developer at Northwind Analytics is writing their first recursive CTE in Snowflake to traverse a four-level DEPARTMENT hierarchy. The initial query fails with two separate errors. Reviewing the code, the developer identifies the problems: the WITH clause reads WITH dept_tree AS (...) without any additional keywords, and the anchor member and recursive member are combined using UNION rather than UNION ALL. Which two changes must the developer make to resolve both errors and allow the recursive CTE to execute successfully in Snowflake? (Select two!)
Multiple correct answersExplanation
Snowflake requires the RECURSIVE keyword explicitly in the WITH clause when writing a self-referencing CTE. Without it, Snowflake does not treat the CTE as recursive and raises an error when it encounters the self-reference because the CTE name is not yet defined in a recursive context. Additionally, Snowflake only supports UNION ALL to combine the anchor and recursive members; UNION is not permitted because its implicit row-deduplication step is incompatible with the iterative expansion mechanism Snowflake uses internally for recursion. MAXRECURSION is a SQL Server-specific query hint that does not exist in Snowflake syntax. The recursive member is fully supported in referencing the CTE name inside a JOIN — this is the standard and recommended pattern. A LIMIT clause is explicitly prohibited inside the recursive member itself, per Snowflake's constraints on the recursive clause, and would introduce an additional syntax error rather than resolve one.
SnowPro® Specialty: Snowpark (SPS-C01)
SPS-C01 · 599 questions
SnowPro Advanced: Administrator (ADA-C02)
ADA-C02 · 600 questions
SnowPro Advanced: Architect (ARA-C01)
ARA-C01 · 592 questions
SnowPro Advanced: Data Engineer (DEA-C02)
DEA-C02 · 597 questions
SnowPro® Advanced: Data Scientist (DSA-C03)
DSA-C03 · 600 questions
SnowPro Advanced: Security Engineer (SEA-C01)
SEA-C01 · 550 questions
$17.99
One-time access to this exam