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."
Model schema and query new-market readiness
Assume today is 2025-09-01. You are given (or can propose) a minimal schema to assess new-market readiness and early performance. Use the schema below...
Write SQL to compute max-overlap lists
Invented schema and sample data below. Assume 'today' is 2025-09-01 and 'last 7 days' means 2025-08-26 through 2025-09-01 inclusive. Only consider lis...
Write SQL to compute shop visibility share
Assume today is 2025-09-01. Compute the top 3 shops by average daily visibility share over the last 7 days (2025-08-26 to 2025-09-01, inclusive) for U...
Write SQL for revenue and advertiser analyses
Use the schema below and ANSI SQL. Treat “today” as 2025-09-01. Schema: - active_ads(date DATE, ad_id INT, advertiser_id INT, creation_source VARCHAR,...
Write SQL for cold-complaint diagnostics with LAG/QUALIFY
Using BigQuery/Snowflake-style SQL (CTEs required; use LAG and QUALIFY), answer the tasks below. Assume 'today' is 2025-09-01. Schema and small sample...
Compute 7-day rolling complaint/order ratio in SQL
SQL only. Given the schema and sample data below, write a single Postgres query (no procedural code) to compute a 7-day rolling complaint-to-order rat...
Merge ad CSVs and compute CTR
Using SQL, clean and merge four CSVs and answer all parts exactly. Schema and sample rows (assume types: date is DATE, others INT/VARCHAR): platforms(...
Aggregate video time and unique pins in Python
Part A (category by average time for videos): You receive a list of pin engagement rows and a category map. pins = [ {"pin_id": 10, "category_id": 1,...
Analyze spend and creation-source shifts
You are working with ads data. Assume the following tables, with all timestamps interpreted in UTC. - advertisers(advertiser_id BIGINT, advertiser_cat...
Pre-process Financial Data for Linear Regression Modeling
market_data +------------+----------+----------+--------+ | date | feature1 | feature2 | target | +------------+----------+----------+--------+ ...
Analyze Cross-Country Call Data for Recent Trends
Users +---------+-------------+----------+ | user_id | signup_date | country | +---------+-------------+----------+ | 1 | 2021-01-04 | US ...
Compare Spark RDDs, DataFrames, and Spark SQL Benefits
spark_jobs +---------+---------------------+-------+-----------+---------+ | job_id | submit_time | user | memory_gb | status | +---------+...
Analyze User Engagement with SQL Queries
events +----------+---------+---------------------+ | event_id | user_id | event_time | +----------+---------+---------------------+ | 1 ...
Calculate Total Revenue in USD Using SQL Query
ads_revenue +---------+------------+---------+----------+ | ad_id | country | revenue | currency | +---------+------------+---------+----------+ ...
Calculate Top Countries' Gmail Usage and MoM Change
emails +----+---------+-----------+-----------+------------+ | id | user_id | country | provider | send_date | +----+---------+-----------+-------...
Determine Unhealthy Oculus Usage with SQL Analysis
oculus_sessions +---------+---------------------+---------------------+---------+------------+ | user_id | session_start | session_end |...
Calculate Late Delivery Percentage and Top Customers
Orders +-----------+-------------+------------------------+------------------------+ | order_id | customer_id | expected_delivery_date | actual_deliv...
Calculate Second-Degree Followers for Each YouTuber
following +----------+----------+ | YouTuber | follower | +----------+----------+ | A | B | | A | C | | B | D ...
Analyze Transactions and Classify by Amount in SQL
transactions +---------------+---------+--------+---------+---------------------+-----------------+ | transaction_id| user_id | amount | status | ts ...
Compare WHERE vs HAVING with aggregates
Filter groups based on an aggregate and explain WHERE vs HAVING. Provide a query that returns merchants with chargeback_rate > 0.5% in the last 30 day...