Bird
0
0

Which of the following is the correct syntax to reference one CTE inside another in SQL?

easy📝 Syntax Q12 of 15
SQL - Common Table Expressions (CTEs)
Which of the following is the correct syntax to reference one CTE inside another in SQL?
AWITH cte1 AS (SELECT * FROM table1), cte2 AS (SELECT * FROM cte1 WHERE id > 10) SELECT * FROM cte2;
BWITH cte1 AS (SELECT * FROM table1) SELECT * FROM cte1; WITH cte2 AS (SELECT * FROM cte1 WHERE id > 10);
CCREATE CTE cte1 AS SELECT * FROM table1; CREATE CTE cte2 AS SELECT * FROM cte1 WHERE id > 10;
DSELECT * FROM cte1; WITH cte2 AS (SELECT * FROM cte1 WHERE id > 10);
Step-by-Step Solution
Solution:
  1. Step 1: Review correct CTE syntax

    Multiple CTEs are defined together after WITH, separated by commas, and can reference each other.
  2. Step 2: Check each option

    WITH cte1 AS (SELECT * FROM table1), cte2 AS (SELECT * FROM cte1 WHERE id > 10) SELECT * FROM cte2; correctly defines cte1, then cte2 referencing cte1, then selects from cte2. Others misuse WITH or CREATE keywords.
  3. Final Answer:

    WITH cte1 AS (SELECT * FROM table1), cte2 AS (SELECT * FROM cte1 WHERE id > 10) SELECT * FROM cte2; -> Option A
  4. Quick Check:

    Multiple CTEs separated by commas = A [OK]
Quick Trick: Use one WITH clause for all CTEs, separated by commas [OK]
Common Mistakes:
  • Using multiple WITH clauses separately
  • Trying to CREATE CTEs like tables
  • Placing SELECT before WITH

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More SQL Quizzes