Independent Company Challenges

Google-style SQL challenges

Independent Google-style search, advertising, user-engagement, and video-product SQL practice.

These independent exercises use Google-relevant business domains; they are not claimed to be questions used by Google, and this site is not affiliated with the company.

Exercises
29
Difficulty
Beginner to Hard

What this collection tests

Skills and query patterns

Search behavior, advertising revenue, user activity, video engagement, retention, and product analytics

Curated exercises

Choose a challenge

Work in the live editor where supported. Advanced guided labs state their engine boundary before you open the workspace.

  1. Challenge 1Easy

    Active Search Queries

    Which distinct search queries were entered on or after January 18, 2024?

    • Filtering
    • Sorting
    • Distinct values

    SQLite live

    Open challenge
  2. Challenge 2Beginner

    Total Users Count

    How many users are registered on the product platform?

    • Aggregation

    SQLite live

    Open challenge
  3. Challenge 3Easy

    Users by Country

    How many users are registered from each country?

    • Aggregation
    • Sorting

    SQLite live

    Open challenge
  4. Challenge 4Beginner

    Mobile Users

    Which users signed up using a mobile device?

    • Filtering
    • Sorting

    SQLite live

    Open challenge
  5. Challenge 5Easy

    Daily Search Volume

    How many search queries were submitted on each day?

    • Aggregation
    • Date analysis
    • Sorting

    SQLite live

    Open challenge
  6. Challenge 6Easy

    Users Without Searches

    Which registered users have never made a single search query?

    • Joins
    • NULL handling
    • Filtering

    SQLite live

    Open challenge
  7. Challenge 7Beginner

    Search Queries Count

    What is the total number of search queries stored in the system?

    • Aggregation

    SQLite live

    Open challenge
  8. Challenge 8Beginner

    Recent Signups

    Which users signed up on or after February 1, 2024?

    • Filtering
    • Sorting

    SQLite live

    Open challenge
  9. Challenge 9Easy

    Searches by User

    How many searches has each user performed in total?

    • Aggregation
    • Sorting

    SQLite live

    Open challenge
  10. Challenge 10Easy

    Top Countries by Users

    Which countries have the most users, ranked from highest to lowest?

    • Aggregation
    • Sorting

    SQLite live

    Open challenge
  11. Challenge 11Medium

    Most Searched Query

    Which search query has been submitted the most times, and how many times?

    • Aggregation
    • Sorting
    • Top-N

    SQLite live

    Open challenge
  12. Challenge 12Medium

    Daily Active Users

    How many unique users performed at least one search on each day?

    • Aggregation
    • Date analysis
    • Sorting

    SQLite live

    Open challenge
  13. Challenge 13Medium

    Revenue by User

    What is the total ad revenue each user has generated through ad clicks?

    • Aggregation
    • Numeric functions
    • Sorting

    SQLite live

    Open challenge
  14. Challenge 14Medium

    Top Revenue Users

    Which 5 users have generated the most total ad revenue?

    • Aggregation
    • Numeric functions
    • Sorting

    SQLite live

    Open challenge
  15. Challenge 15Medium

    Users with Multiple Searches

    Which users have submitted more than 10 search queries in total?

    • Aggregation
    • HAVING
    • Sorting

    SQLite live

    Open challenge
  16. Challenge 16Medium

    Video Views Per Category

    How many total video views has each YouTube content category received?

    • Joins
    • Aggregation
    • Sorting

    SQLite live

    Open challenge
  17. Challenge 17Medium

    Average Watch Time

    What is the average watch time in seconds for each video?

    • Aggregation
    • Numeric functions
    • Sorting

    SQLite live

    Open challenge
  18. Challenge 18Medium

    Users with Ad Clicks

    Which users have clicked on at least one ad?

    • Sorting
    • Distinct values

    SQLite live

    Open challenge
  19. Challenge 19Medium

    Search to Signup Gap

    Which users performed a search on the exact same day they signed up?

    • Joins
    • Date analysis
    • Filtering

    SQLite live

    Open challenge
  20. Challenge 20Medium

    Inactive Users

    Which users have not performed any search on or after January 15, 2024?

    • Joins
    • Date analysis
    • NULL handling

    SQLite live

    Open challenge
  21. Challenge 21Hard

    User Retention

    Which users searched on at least one pair of consecutive days?

    • Joins
    • Date analysis
    • Sorting

    SQLite live

    Open challenge
  22. Challenge 22Hard

    Top Query Per Day

    For each day, which search query was submitted the most times? When multiple queries tie, show all tied queries.

    • Window functions
    • Subqueries
    • Aggregation

    SQLite live

    Open challenge
  23. Challenge 23Hard

    Revenue Contribution %

    What percentage of total ad revenue does each user account for?

    • Subqueries
    • Aggregation
    • Numeric functions

    SQLite live

    Open challenge
  24. Challenge 24Hard

    Most Engaged Users

    Which users have an average video watch time above the platform-wide average?

    • Subqueries
    • Aggregation
    • HAVING

    SQLite live

    Open challenge
  25. Challenge 25Hard

    Top Revenue Users with Search Activity

    Which 10 searching users generated the most ad revenue?

    • Joins
    • Subqueries
    • Aggregation

    SQLite live

    Open challenge
  26. Challenge 26Beginner

    Users by Device Type

    How many users registered on each type of device?

    • Aggregation
    • Sorting

    SQLite live

    Open challenge
  27. Challenge 27Medium

    Daily Ad Revenue Trend

    What is the total ad revenue and click count for each day?

    • Aggregation
    • Date analysis
    • Numeric functions

    SQLite live

    Open challenge
  28. Challenge 28Medium

    Top 5 Videos by Total Watch Time

    Which 5 videos have accumulated the most total watch time across all viewers?

    • Joins
    • Aggregation
    • Sorting

    SQLite live

    Open challenge
  29. Challenge 29Hard

    Top Viewer per Video Category

    In each video category, which user has watched the most total seconds of content?

    • Window functions
    • Joins
    • Subqueries

    SQLite live

    Open challenge
01

Attempt

Write a query or design from the brief before opening any hints.

02

Validate

Run it against the included dataset and inspect the output.

03

Explain

Compare the verified answer and explain each choice aloud.

Learn before practicing Google

Strengthen your understanding with these targeted learning topics:

Continue practicing

SQL Interview Practice

Return to the complete interview preparation experience.