0% found this document useful (0 votes)
57 views39 pages

100 Advanced SQL CTE Questions

The document contains 100 advanced SQL questions that utilize Common Table Expressions (CTEs) to extract the top 3 rows per category from various sample tables based on their values. Each question follows a similar structure, demonstrating the use of the ROW_NUMBER() function within a CTE to rank entries by category. The output consistently shows the top 3 entries for each category across different sample tables.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views39 pages

100 Advanced SQL CTE Questions

The document contains 100 advanced SQL questions that utilize Common Table Expressions (CTEs) to extract the top 3 rows per category from various sample tables based on their values. Each question follows a similar structure, demonstrating the use of the ROW_NUMBER() function within a CTE to rank entries by category. The output consistently shows the top 3 entries for each category across different sample tables.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

100 Advanced SQL Questions with CTEs - Scenario-Based

Q1. Sample Advanced SQL CTE Scenario #1


Table: sample_table_1(id, value, category)

Query:

WITH CTE_1 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_1
)
SELECT * FROM CTE_1 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_1 based on value.

Q2. Sample Advanced SQL CTE Scenario #2


Table: sample_table_2(id, value, category)

Query:

WITH CTE_2 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_2
)
SELECT * FROM CTE_2 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_2 based on value.

Q3. Sample Advanced SQL CTE Scenario #3


Table: sample_table_3(id, value, category)

Query:

WITH CTE_3 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_3
100 Advanced SQL Questions with CTEs - Scenario-Based

)
SELECT * FROM CTE_3 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_3 based on value.

Q4. Sample Advanced SQL CTE Scenario #4


Table: sample_table_4(id, value, category)

Query:

WITH CTE_4 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_4
)
SELECT * FROM CTE_4 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_4 based on value.

Q5. Sample Advanced SQL CTE Scenario #5


Table: sample_table_5(id, value, category)

Query:

WITH CTE_5 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_5
)
SELECT * FROM CTE_5 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_5 based on value.

Q6. Sample Advanced SQL CTE Scenario #6


Table: sample_table_6(id, value, category)
100 Advanced SQL Questions with CTEs - Scenario-Based

Query:

WITH CTE_6 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_6
)
SELECT * FROM CTE_6 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_6 based on value.

Q7. Sample Advanced SQL CTE Scenario #7


Table: sample_table_7(id, value, category)

Query:

WITH CTE_7 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_7
)
SELECT * FROM CTE_7 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_7 based on value.

Q8. Sample Advanced SQL CTE Scenario #8


Table: sample_table_8(id, value, category)

Query:

WITH CTE_8 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_8
)
SELECT * FROM CTE_8 WHERE rn <= 3;
100 Advanced SQL Questions with CTEs - Scenario-Based

Output:
Top 3 rows per category from sample_table_8 based on value.

Q9. Sample Advanced SQL CTE Scenario #9


Table: sample_table_9(id, value, category)

Query:

WITH CTE_9 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_9
)
SELECT * FROM CTE_9 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_9 based on value.

Q10. Sample Advanced SQL CTE Scenario #10


Table: sample_table_10(id, value, category)

Query:

WITH CTE_10 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_10
)
SELECT * FROM CTE_10 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_10 based on value.

Q11. Sample Advanced SQL CTE Scenario #11


Table: sample_table_11(id, value, category)

Query:
100 Advanced SQL Questions with CTEs - Scenario-Based

WITH CTE_11 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_11
)
SELECT * FROM CTE_11 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_11 based on value.

Q12. Sample Advanced SQL CTE Scenario #12


Table: sample_table_12(id, value, category)

Query:

WITH CTE_12 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_12
)
SELECT * FROM CTE_12 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_12 based on value.

Q13. Sample Advanced SQL CTE Scenario #13


Table: sample_table_13(id, value, category)

Query:

WITH CTE_13 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_13
)
SELECT * FROM CTE_13 WHERE rn <= 3;

Output:
100 Advanced SQL Questions with CTEs - Scenario-Based

Top 3 rows per category from sample_table_13 based on value.

Q14. Sample Advanced SQL CTE Scenario #14


Table: sample_table_14(id, value, category)

Query:

WITH CTE_14 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_14
)
SELECT * FROM CTE_14 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_14 based on value.

Q15. Sample Advanced SQL CTE Scenario #15


Table: sample_table_15(id, value, category)

Query:

WITH CTE_15 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_15
)
SELECT * FROM CTE_15 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_15 based on value.

Q16. Sample Advanced SQL CTE Scenario #16


Table: sample_table_16(id, value, category)

Query:

WITH CTE_16 AS (
100 Advanced SQL Questions with CTEs - Scenario-Based

SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn


FROM sample_table_16
)
SELECT * FROM CTE_16 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_16 based on value.

Q17. Sample Advanced SQL CTE Scenario #17


Table: sample_table_17(id, value, category)

Query:

WITH CTE_17 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_17
)
SELECT * FROM CTE_17 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_17 based on value.

Q18. Sample Advanced SQL CTE Scenario #18


Table: sample_table_18(id, value, category)

Query:

WITH CTE_18 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_18
)
SELECT * FROM CTE_18 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_18 based on value.
100 Advanced SQL Questions with CTEs - Scenario-Based

Q19. Sample Advanced SQL CTE Scenario #19


Table: sample_table_19(id, value, category)

Query:

WITH CTE_19 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_19
)
SELECT * FROM CTE_19 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_19 based on value.

Q20. Sample Advanced SQL CTE Scenario #20


Table: sample_table_20(id, value, category)

Query:

WITH CTE_20 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_20
)
SELECT * FROM CTE_20 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_20 based on value.

Q21. Sample Advanced SQL CTE Scenario #21


Table: sample_table_21(id, value, category)

Query:

WITH CTE_21 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_21
100 Advanced SQL Questions with CTEs - Scenario-Based

)
SELECT * FROM CTE_21 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_21 based on value.

Q22. Sample Advanced SQL CTE Scenario #22


Table: sample_table_22(id, value, category)

Query:

WITH CTE_22 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_22
)
SELECT * FROM CTE_22 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_22 based on value.

Q23. Sample Advanced SQL CTE Scenario #23


Table: sample_table_23(id, value, category)

Query:

WITH CTE_23 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_23
)
SELECT * FROM CTE_23 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_23 based on value.

Q24. Sample Advanced SQL CTE Scenario #24


Table: sample_table_24(id, value, category)
100 Advanced SQL Questions with CTEs - Scenario-Based

Query:

WITH CTE_24 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_24
)
SELECT * FROM CTE_24 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_24 based on value.

Q25. Sample Advanced SQL CTE Scenario #25


Table: sample_table_25(id, value, category)

Query:

WITH CTE_25 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_25
)
SELECT * FROM CTE_25 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_25 based on value.

Q26. Sample Advanced SQL CTE Scenario #26


Table: sample_table_26(id, value, category)

Query:

WITH CTE_26 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_26
)
SELECT * FROM CTE_26 WHERE rn <= 3;
100 Advanced SQL Questions with CTEs - Scenario-Based

Output:
Top 3 rows per category from sample_table_26 based on value.

Q27. Sample Advanced SQL CTE Scenario #27


Table: sample_table_27(id, value, category)

Query:

WITH CTE_27 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_27
)
SELECT * FROM CTE_27 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_27 based on value.

Q28. Sample Advanced SQL CTE Scenario #28


Table: sample_table_28(id, value, category)

Query:

WITH CTE_28 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_28
)
SELECT * FROM CTE_28 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_28 based on value.

Q29. Sample Advanced SQL CTE Scenario #29


Table: sample_table_29(id, value, category)

Query:
100 Advanced SQL Questions with CTEs - Scenario-Based

WITH CTE_29 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_29
)
SELECT * FROM CTE_29 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_29 based on value.

Q30. Sample Advanced SQL CTE Scenario #30


Table: sample_table_30(id, value, category)

Query:

WITH CTE_30 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_30
)
SELECT * FROM CTE_30 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_30 based on value.

Q31. Sample Advanced SQL CTE Scenario #31


Table: sample_table_31(id, value, category)

Query:

WITH CTE_31 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_31
)
SELECT * FROM CTE_31 WHERE rn <= 3;

Output:
100 Advanced SQL Questions with CTEs - Scenario-Based

Top 3 rows per category from sample_table_31 based on value.

Q32. Sample Advanced SQL CTE Scenario #32


Table: sample_table_32(id, value, category)

Query:

WITH CTE_32 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_32
)
SELECT * FROM CTE_32 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_32 based on value.

Q33. Sample Advanced SQL CTE Scenario #33


Table: sample_table_33(id, value, category)

Query:

WITH CTE_33 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_33
)
SELECT * FROM CTE_33 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_33 based on value.

Q34. Sample Advanced SQL CTE Scenario #34


Table: sample_table_34(id, value, category)

Query:

WITH CTE_34 AS (
100 Advanced SQL Questions with CTEs - Scenario-Based

SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn


FROM sample_table_34
)
SELECT * FROM CTE_34 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_34 based on value.

Q35. Sample Advanced SQL CTE Scenario #35


Table: sample_table_35(id, value, category)

Query:

WITH CTE_35 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_35
)
SELECT * FROM CTE_35 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_35 based on value.

Q36. Sample Advanced SQL CTE Scenario #36


Table: sample_table_36(id, value, category)

Query:

WITH CTE_36 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_36
)
SELECT * FROM CTE_36 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_36 based on value.
100 Advanced SQL Questions with CTEs - Scenario-Based

Q37. Sample Advanced SQL CTE Scenario #37


Table: sample_table_37(id, value, category)

Query:

WITH CTE_37 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_37
)
SELECT * FROM CTE_37 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_37 based on value.

Q38. Sample Advanced SQL CTE Scenario #38


Table: sample_table_38(id, value, category)

Query:

WITH CTE_38 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_38
)
SELECT * FROM CTE_38 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_38 based on value.

Q39. Sample Advanced SQL CTE Scenario #39


Table: sample_table_39(id, value, category)

Query:

WITH CTE_39 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_39
100 Advanced SQL Questions with CTEs - Scenario-Based

)
SELECT * FROM CTE_39 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_39 based on value.

Q40. Sample Advanced SQL CTE Scenario #40


Table: sample_table_40(id, value, category)

Query:

WITH CTE_40 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_40
)
SELECT * FROM CTE_40 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_40 based on value.

Q41. Sample Advanced SQL CTE Scenario #41


Table: sample_table_41(id, value, category)

Query:

WITH CTE_41 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_41
)
SELECT * FROM CTE_41 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_41 based on value.

Q42. Sample Advanced SQL CTE Scenario #42


Table: sample_table_42(id, value, category)
100 Advanced SQL Questions with CTEs - Scenario-Based

Query:

WITH CTE_42 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_42
)
SELECT * FROM CTE_42 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_42 based on value.

Q43. Sample Advanced SQL CTE Scenario #43


Table: sample_table_43(id, value, category)

Query:

WITH CTE_43 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_43
)
SELECT * FROM CTE_43 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_43 based on value.

Q44. Sample Advanced SQL CTE Scenario #44


Table: sample_table_44(id, value, category)

Query:

WITH CTE_44 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_44
)
SELECT * FROM CTE_44 WHERE rn <= 3;
100 Advanced SQL Questions with CTEs - Scenario-Based

Output:
Top 3 rows per category from sample_table_44 based on value.

Q45. Sample Advanced SQL CTE Scenario #45


Table: sample_table_45(id, value, category)

Query:

WITH CTE_45 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_45
)
SELECT * FROM CTE_45 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_45 based on value.

Q46. Sample Advanced SQL CTE Scenario #46


Table: sample_table_46(id, value, category)

Query:

WITH CTE_46 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_46
)
SELECT * FROM CTE_46 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_46 based on value.

Q47. Sample Advanced SQL CTE Scenario #47


Table: sample_table_47(id, value, category)

Query:
100 Advanced SQL Questions with CTEs - Scenario-Based

WITH CTE_47 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_47
)
SELECT * FROM CTE_47 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_47 based on value.

Q48. Sample Advanced SQL CTE Scenario #48


Table: sample_table_48(id, value, category)

Query:

WITH CTE_48 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_48
)
SELECT * FROM CTE_48 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_48 based on value.

Q49. Sample Advanced SQL CTE Scenario #49


Table: sample_table_49(id, value, category)

Query:

WITH CTE_49 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_49
)
SELECT * FROM CTE_49 WHERE rn <= 3;

Output:
100 Advanced SQL Questions with CTEs - Scenario-Based

Top 3 rows per category from sample_table_49 based on value.

Q50. Sample Advanced SQL CTE Scenario #50


Table: sample_table_50(id, value, category)

Query:

WITH CTE_50 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_50
)
SELECT * FROM CTE_50 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_50 based on value.

Q51. Sample Advanced SQL CTE Scenario #51


Table: sample_table_51(id, value, category)

Query:

WITH CTE_51 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_51
)
SELECT * FROM CTE_51 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_51 based on value.

Q52. Sample Advanced SQL CTE Scenario #52


Table: sample_table_52(id, value, category)

Query:

WITH CTE_52 AS (
100 Advanced SQL Questions with CTEs - Scenario-Based

SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn


FROM sample_table_52
)
SELECT * FROM CTE_52 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_52 based on value.

Q53. Sample Advanced SQL CTE Scenario #53


Table: sample_table_53(id, value, category)

Query:

WITH CTE_53 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_53
)
SELECT * FROM CTE_53 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_53 based on value.

Q54. Sample Advanced SQL CTE Scenario #54


Table: sample_table_54(id, value, category)

Query:

WITH CTE_54 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_54
)
SELECT * FROM CTE_54 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_54 based on value.
100 Advanced SQL Questions with CTEs - Scenario-Based

Q55. Sample Advanced SQL CTE Scenario #55


Table: sample_table_55(id, value, category)

Query:

WITH CTE_55 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_55
)
SELECT * FROM CTE_55 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_55 based on value.

Q56. Sample Advanced SQL CTE Scenario #56


Table: sample_table_56(id, value, category)

Query:

WITH CTE_56 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_56
)
SELECT * FROM CTE_56 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_56 based on value.

Q57. Sample Advanced SQL CTE Scenario #57


Table: sample_table_57(id, value, category)

Query:

WITH CTE_57 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_57
100 Advanced SQL Questions with CTEs - Scenario-Based

)
SELECT * FROM CTE_57 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_57 based on value.

Q58. Sample Advanced SQL CTE Scenario #58


Table: sample_table_58(id, value, category)

Query:

WITH CTE_58 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_58
)
SELECT * FROM CTE_58 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_58 based on value.

Q59. Sample Advanced SQL CTE Scenario #59


Table: sample_table_59(id, value, category)

Query:

WITH CTE_59 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_59
)
SELECT * FROM CTE_59 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_59 based on value.

Q60. Sample Advanced SQL CTE Scenario #60


Table: sample_table_60(id, value, category)
100 Advanced SQL Questions with CTEs - Scenario-Based

Query:

WITH CTE_60 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_60
)
SELECT * FROM CTE_60 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_60 based on value.

Q61. Sample Advanced SQL CTE Scenario #61


Table: sample_table_61(id, value, category)

Query:

WITH CTE_61 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_61
)
SELECT * FROM CTE_61 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_61 based on value.

Q62. Sample Advanced SQL CTE Scenario #62


Table: sample_table_62(id, value, category)

Query:

WITH CTE_62 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_62
)
SELECT * FROM CTE_62 WHERE rn <= 3;
100 Advanced SQL Questions with CTEs - Scenario-Based

Output:
Top 3 rows per category from sample_table_62 based on value.

Q63. Sample Advanced SQL CTE Scenario #63


Table: sample_table_63(id, value, category)

Query:

WITH CTE_63 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_63
)
SELECT * FROM CTE_63 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_63 based on value.

Q64. Sample Advanced SQL CTE Scenario #64


Table: sample_table_64(id, value, category)

Query:

WITH CTE_64 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_64
)
SELECT * FROM CTE_64 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_64 based on value.

Q65. Sample Advanced SQL CTE Scenario #65


Table: sample_table_65(id, value, category)

Query:
100 Advanced SQL Questions with CTEs - Scenario-Based

WITH CTE_65 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_65
)
SELECT * FROM CTE_65 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_65 based on value.

Q66. Sample Advanced SQL CTE Scenario #66


Table: sample_table_66(id, value, category)

Query:

WITH CTE_66 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_66
)
SELECT * FROM CTE_66 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_66 based on value.

Q67. Sample Advanced SQL CTE Scenario #67


Table: sample_table_67(id, value, category)

Query:

WITH CTE_67 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_67
)
SELECT * FROM CTE_67 WHERE rn <= 3;

Output:
100 Advanced SQL Questions with CTEs - Scenario-Based

Top 3 rows per category from sample_table_67 based on value.

Q68. Sample Advanced SQL CTE Scenario #68


Table: sample_table_68(id, value, category)

Query:

WITH CTE_68 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_68
)
SELECT * FROM CTE_68 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_68 based on value.

Q69. Sample Advanced SQL CTE Scenario #69


Table: sample_table_69(id, value, category)

Query:

WITH CTE_69 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_69
)
SELECT * FROM CTE_69 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_69 based on value.

Q70. Sample Advanced SQL CTE Scenario #70


Table: sample_table_70(id, value, category)

Query:

WITH CTE_70 AS (
100 Advanced SQL Questions with CTEs - Scenario-Based

SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn


FROM sample_table_70
)
SELECT * FROM CTE_70 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_70 based on value.

Q71. Sample Advanced SQL CTE Scenario #71


Table: sample_table_71(id, value, category)

Query:

WITH CTE_71 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_71
)
SELECT * FROM CTE_71 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_71 based on value.

Q72. Sample Advanced SQL CTE Scenario #72


Table: sample_table_72(id, value, category)

Query:

WITH CTE_72 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_72
)
SELECT * FROM CTE_72 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_72 based on value.
100 Advanced SQL Questions with CTEs - Scenario-Based

Q73. Sample Advanced SQL CTE Scenario #73


Table: sample_table_73(id, value, category)

Query:

WITH CTE_73 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_73
)
SELECT * FROM CTE_73 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_73 based on value.

Q74. Sample Advanced SQL CTE Scenario #74


Table: sample_table_74(id, value, category)

Query:

WITH CTE_74 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_74
)
SELECT * FROM CTE_74 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_74 based on value.

Q75. Sample Advanced SQL CTE Scenario #75


Table: sample_table_75(id, value, category)

Query:

WITH CTE_75 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_75
100 Advanced SQL Questions with CTEs - Scenario-Based

)
SELECT * FROM CTE_75 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_75 based on value.

Q76. Sample Advanced SQL CTE Scenario #76


Table: sample_table_76(id, value, category)

Query:

WITH CTE_76 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_76
)
SELECT * FROM CTE_76 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_76 based on value.

Q77. Sample Advanced SQL CTE Scenario #77


Table: sample_table_77(id, value, category)

Query:

WITH CTE_77 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_77
)
SELECT * FROM CTE_77 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_77 based on value.

Q78. Sample Advanced SQL CTE Scenario #78


Table: sample_table_78(id, value, category)
100 Advanced SQL Questions with CTEs - Scenario-Based

Query:

WITH CTE_78 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_78
)
SELECT * FROM CTE_78 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_78 based on value.

Q79. Sample Advanced SQL CTE Scenario #79


Table: sample_table_79(id, value, category)

Query:

WITH CTE_79 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_79
)
SELECT * FROM CTE_79 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_79 based on value.

Q80. Sample Advanced SQL CTE Scenario #80


Table: sample_table_80(id, value, category)

Query:

WITH CTE_80 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_80
)
SELECT * FROM CTE_80 WHERE rn <= 3;
100 Advanced SQL Questions with CTEs - Scenario-Based

Output:
Top 3 rows per category from sample_table_80 based on value.

Q81. Sample Advanced SQL CTE Scenario #81


Table: sample_table_81(id, value, category)

Query:

WITH CTE_81 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_81
)
SELECT * FROM CTE_81 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_81 based on value.

Q82. Sample Advanced SQL CTE Scenario #82


Table: sample_table_82(id, value, category)

Query:

WITH CTE_82 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_82
)
SELECT * FROM CTE_82 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_82 based on value.

Q83. Sample Advanced SQL CTE Scenario #83


Table: sample_table_83(id, value, category)

Query:
100 Advanced SQL Questions with CTEs - Scenario-Based

WITH CTE_83 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_83
)
SELECT * FROM CTE_83 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_83 based on value.

Q84. Sample Advanced SQL CTE Scenario #84


Table: sample_table_84(id, value, category)

Query:

WITH CTE_84 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_84
)
SELECT * FROM CTE_84 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_84 based on value.

Q85. Sample Advanced SQL CTE Scenario #85


Table: sample_table_85(id, value, category)

Query:

WITH CTE_85 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_85
)
SELECT * FROM CTE_85 WHERE rn <= 3;

Output:
100 Advanced SQL Questions with CTEs - Scenario-Based

Top 3 rows per category from sample_table_85 based on value.

Q86. Sample Advanced SQL CTE Scenario #86


Table: sample_table_86(id, value, category)

Query:

WITH CTE_86 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_86
)
SELECT * FROM CTE_86 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_86 based on value.

Q87. Sample Advanced SQL CTE Scenario #87


Table: sample_table_87(id, value, category)

Query:

WITH CTE_87 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_87
)
SELECT * FROM CTE_87 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_87 based on value.

Q88. Sample Advanced SQL CTE Scenario #88


Table: sample_table_88(id, value, category)

Query:

WITH CTE_88 AS (
100 Advanced SQL Questions with CTEs - Scenario-Based

SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn


FROM sample_table_88
)
SELECT * FROM CTE_88 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_88 based on value.

Q89. Sample Advanced SQL CTE Scenario #89


Table: sample_table_89(id, value, category)

Query:

WITH CTE_89 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_89
)
SELECT * FROM CTE_89 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_89 based on value.

Q90. Sample Advanced SQL CTE Scenario #90


Table: sample_table_90(id, value, category)

Query:

WITH CTE_90 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_90
)
SELECT * FROM CTE_90 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_90 based on value.
100 Advanced SQL Questions with CTEs - Scenario-Based

Q91. Sample Advanced SQL CTE Scenario #91


Table: sample_table_91(id, value, category)

Query:

WITH CTE_91 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_91
)
SELECT * FROM CTE_91 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_91 based on value.

Q92. Sample Advanced SQL CTE Scenario #92


Table: sample_table_92(id, value, category)

Query:

WITH CTE_92 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_92
)
SELECT * FROM CTE_92 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_92 based on value.

Q93. Sample Advanced SQL CTE Scenario #93


Table: sample_table_93(id, value, category)

Query:

WITH CTE_93 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_93
100 Advanced SQL Questions with CTEs - Scenario-Based

)
SELECT * FROM CTE_93 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_93 based on value.

Q94. Sample Advanced SQL CTE Scenario #94


Table: sample_table_94(id, value, category)

Query:

WITH CTE_94 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_94
)
SELECT * FROM CTE_94 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_94 based on value.

Q95. Sample Advanced SQL CTE Scenario #95


Table: sample_table_95(id, value, category)

Query:

WITH CTE_95 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_95
)
SELECT * FROM CTE_95 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_95 based on value.

Q96. Sample Advanced SQL CTE Scenario #96


Table: sample_table_96(id, value, category)
100 Advanced SQL Questions with CTEs - Scenario-Based

Query:

WITH CTE_96 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_96
)
SELECT * FROM CTE_96 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_96 based on value.

Q97. Sample Advanced SQL CTE Scenario #97


Table: sample_table_97(id, value, category)

Query:

WITH CTE_97 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_97
)
SELECT * FROM CTE_97 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_97 based on value.

Q98. Sample Advanced SQL CTE Scenario #98


Table: sample_table_98(id, value, category)

Query:

WITH CTE_98 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_98
)
SELECT * FROM CTE_98 WHERE rn <= 3;
100 Advanced SQL Questions with CTEs - Scenario-Based

Output:
Top 3 rows per category from sample_table_98 based on value.

Q99. Sample Advanced SQL CTE Scenario #99


Table: sample_table_99(id, value, category)

Query:

WITH CTE_99 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_99
)
SELECT * FROM CTE_99 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_99 based on value.

Q100. Sample Advanced SQL CTE Scenario #100


Table: sample_table_100(id, value, category)

Query:

WITH CTE_100 AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY category ORDER BY value DESC) AS rn
FROM sample_table_100
)
SELECT * FROM CTE_100 WHERE rn <= 3;

Output:
Top 3 rows per category from sample_table_100 based on value.

You might also like