Data Scientist Data Manipulation (SQL/Python) Interview Questions
Practice 530 real Data Manipulation (SQL/Python) interview questions for Data Scientist roles. From companies including Meta, Amazon, TikTok, Capital One, DoorDash.

"I got asked a hardcore MCM DP question and I saw it on PracHub as well. Solved that question in 5 minutes. Without PracHub I doubt I could solve it in 5 hours. Though somehow didn't get hired, perhaps I guess I solved it too fast? /s"

"Believe me i'm a student here jn US. Recently interviewed for MSFT. They asked me exact question from PracHub. I saw it the night before and ignored it cause why waste time on random sites. I legit wanna go back and redo this whole thing if I had chance. Not saying will work for everyone but there is certainly some merit to that website. And i'm gonna use it in future prep from now on like lc tagged"

"10 years of experience but never worked at a top company. PracHub's senior-level questions helped me break into FAANG at 35. Age is just a number."

"I was skeptical about the 'real questions' claim, so I put it to the test. I searched for the exact question I got grilled on at my last Meta onsite... and it was right there. Word for word."

"Got a Google recruiter call on Monday, interview on Friday. Crammed PracHub for 4 days. Passed every round. This platform is a miracle worker."

"I've used LC, Glassdoor, and random Discords. Nothing comes close to the accuracy here. The questions are actually current — that's what got me. Felt like I had a cheat sheet during the interview."

"The solution quality is insane. It covers approach, edge cases, time complexity, follow-ups. Nothing else comes close."

"Legit the only resource you need. TC went from 180k -> 350k. Just memorize the top 50 for your target company and you're golden."

"PracHub Premium for one month cost me the price of two coffees a week. It landed me a $280K+ starting offer."

"Literally just signed a $600k offer. I only had 2 weeks to prep, so I focused entirely on the company-tagged lists here. If you're targeting L5+, don't overthink it."

"Coaches and bootcamp prep courses cost around $200-300 but PracHub Premium is actually less than a Netflix subscription. And it landed me a $178K offer."

"I honestly don't know how you guys gather so many real interview questions. It's almost scary. I walked into my Amazon loop and recognized 3 out of 4 problems from your database."

"Discovered PracHub 10 days before my interview. By day 5, I stopped being nervous. By interview day, I was actually excited to show what I knew."

"I recently cleared Uber interviews (strong hire in the design round) and all the questions were present in prachub."
"The search is what sold me. I typed in a really niche DP problem I got asked last year and it actually came up, full breakdown and everything. These guys are clearly updating it constantly."
Write SQL for ads metrics and variability
Write ANSI SQL to compute daily and campaign-level metrics, including averages and standard deviations of daily CTR and CPC, using the schema and samp...
Compute multi-account activity and unread percentages in SQL
You are given two tables. Use them as the source of truth and do not assume any other data. Table: notifications +--------+------------+------------+-...
Find top video category by average time
You are given a pandas DataFrame 'pins' with columns [pin_id:int, category_id:int, time_spent_sec:float, pin_format:string] and a dict 'category_map' ...
Compute 7-day views and reactions by relationship
Use the schemas and sample data below to answer two tasks. Assume dates are strings in 'YYYY-MM-DD'. Treat "today" as 2025-09-01; "last/past 7 days" m...
Join datasets and compute conversion by assignment
You are given two CSVs. Create tables and write SQL to produce both visit-level and visitor-level conversion datasets, then aggregate conversion by as...
Architect cloud data ingestion patterns
Propose a cloud data ingestion and serving pattern for streaming and batch on your preferred cloud (AWS/Azure/GCP). Choose between CDC, event sourcing...
Diagnose DAU drop with SQL by country
Write a single SQL query to diagnose a country-level DAU drop for an email product. Assume today is 2025-09-01. DAU is the count of distinct user_id w...
Compute view prevalence from views and labels
Given the tables below, write SQL to compute view prevalence of violating content. Use “today” = 2025-09-01 and report the last 7 days (2025-08-26 to ...
Compute signup rate and retention from raw logs
Scenario You are analyzing an A/B test for a marketing campaign offering a free 1-month trial. You are given raw “upstream” tables that resemble produ...
Compute Customer Spend and Engineer Features for 2023
transactions +-----------+-------------+--------+------------+--------------+ | tran_id | customer_id | amount | tran_date | merchant_cat | +------...
Understand SQL: DELETE vs TRUNCATE, VIEW vs TABLE, CROSS JOIN
employees +----+--------+---------+ | id | name | dept_id | +----+--------+---------+ | 1 | Alice | 10 | | 2 | Bob | 20 | | 3 | Car...
Calculate Net Pay Change for Q1 2023 Decreases
EMPLOYEES +-------------+------------+-------+ | employee_id | hire_date | state | +-------------+------------+-------+ | 101 | 2022-04-01 | ...
Explain Window Functions and Joins in SQL and Python
TABLE transactions | transaction_id | user_id | merchant | amount | currency | transaction_ts | | 1001 | 17 | Walmart | 45.80...
Calculate Week-over-Week Revenue Change Using SQL
transactions +----+---------+---------+------------+ | id | user_id | revenue | order_date | +----+---------+---------+------------+ | 1 | 101 | ...
Generate Daily Unique User Views for Each Shop
shop_views +---------+---------+---------------------+ | user_id | shop_id | view_time | +---------+---------+---------------------+ | 101 ...
Identify Session with Maximum Overlapping Sessions Count
sessions | session_id | start_time | end_time | | 1 | 2023-01-01 09:00:00 | 2023-01-01 10:00:00 | | 2 | 2023-0...
Retrieve First Active and Last Inactive Dates per User
Given a table activity that tracks user activities, write a SQL query to retrieve the first active date and last inactive date for each user. Table Sc...
Analyze Pirate Theme Usage Growth Over Time
themes +----+--------------+-----------+ | id | name | is_pirate | +----+--------------+-----------+ | 1 | Pirate Red | true | | 2 | ...
Identify Duplicate Posts by User and Date
posts +---------+---------+---------------------+---------------+ | post_id | user_id | created_at | content | +---------+---------+---...
Calculate Weekly, Monthly Hours Watched by Premium Users
watch_events +-----------+----------+----------------+-----------------------+----------------+ | user_id | video_id | watched_minutes| watched_at ...