SQL
Lab
Spotify Spotify Interview Question 03

User
Listening
Time

Calculate total listening time per user.

Table Schema

Inspect
Table

interactive
ColumnType
user_idinteger
song_idinteger
duration_secondsinteger

Sample Data

Input
Output

Sample Input: streams
user_idsong_idduration_seconds
1011200
1012180
1021220
1033300
1013250
Expected Output
user_idtotal_time
101630
102220
103300

SQL Editor

Run
Query

postgresql
Waiting for query

user_idtotal_time
101630
102220
103300

Hints

Unlock
Clues

Hint 01: Identify the grouping level required by the output.
Hint 02: Aggregate with COUNT, SUM, AVG, or a window function as needed.
Hint 03: Filter after aggregation with HAVING or after ranking with an outer query.

Solution

Locked
Answer

Solution is locked until you decide to reveal it. Try the editor first, then open this when you want the reference answer.

SELECT user_id, SUM(duration_seconds) AS total_time
FROM streams
GROUP BY user_id;

Explanation

Step By
Step

01

Read the expected output columns to determine the final grain.

02

Aggregate or rank the input rows to calculate the requested metric.

03

Filter, sort, and alias the final columns to match the output.

Related Questions

Keep
Solving