8. Average customer spend by month

easy

Instruction

  • Write a query to return the average customer spend by month.
  • Definition: average customer spend: total customer spend divided by the unique number of customers for that month.
  • Use EXTRACT(YEAR from ts_field) and EXTRACT(MONTH from ts_field) to get year and month from a timestamp column.
  • The order of your results doesn't matter.

Table: payment

Movie rental payment transactions table


   col_name   | col_type
--------------+--------------------------
 payment_id   | integer
 customer_id  | smallint
 staff_id     | smallint
 rental_id    | integer
 amount       | numeric
 payment_ts   | timestamp with time zone

Sample results


year	mon	avg_spend
2020	2	3.2543037974683544
2020	5	9.1301559454191033

Solution postgres

SELECT
	EXTRACT(YEAR FROM payment_ts) AS year,
	EXTRACT(MONTH FROM payment_ts) AS mon,
	SUM(amount)/COUNT(DISTINCT customer_id) AS avg_spend
FROM payment
GROUP BY year, mon
ORDER BY year, mon;
    

Explanation

This query is selecting data from the 'payment' table in a PostgreSQL database. The data selected includes the year and month of each payment transaction, as well as the average amount spent per customer during that time period.

The EXTRACT function is used to extract the year and month from the payment timestamp column ('payment_ts'). The SUM function is used to calculate the total amount spent during each month, and the COUNT and DISTINCT functions are used together to count the number of unique customers who made payments during that month. The result is an average spend per customer for each month in the dataset.

Finally, the results are grouped by year and month and ordered in ascending order by year and month. This allows the data analyst to easily see trends in average spend over time.

Last Submission postgres

Expected results



More COUNT, SUM, AVERAGE, MIN, MAX, GROUP BY, HAVING questions

ID Title Level FTPR
216 Most active customers roblox hard
10%
215 Monthly active users roblox easy
80%
214 D30 (30days) retention rate roblox medium
20%
209 Card issuer customers count visa easy
100%
207 Results shown rate by group apple medium
50%
206 Search results recall by testing group apple medium
30%
205 Search results recall apple medium
30%
204 AB testing sanity check apple easy
50%
202 Monthly active paid subscriptions apple hard
50%
198 Average score per subject snap easy
50%
197 Students who didn't finish all subjects snap easy
25%
196 User segments report snap hard
18%
193 Difference of replies by testing groups twitter medium
33%
192 Number of replies to the original tweet by group twitter medium
25%
190 Twitter campaign spend report twitter hard
22%
187 Comment distribution at Google Forum google easy
17%
186 Average comments per question google easy
10%
185 Top 5 non-English contents by watch time netflix medium
49%
184 Top 5 movies by watch time netflix medium
16%
183 Top 5 movies by number of watchers netflix easy
46%
181 Users who watched less than one hour of Netflix netflix easy
19%
174 Closed accounts facebook easy
23%
173 User Popularity Percentage facebook medium
11%
171 Binge watches tiktok easy
19%
170 Top 3 countries by average watch time tiktok easy
11%
169 Same day streams tiktok easy
34%
167 Top country in video streaming tiktok easy
28%
164 Orders distribution by brand walmart easy
28%
163 Average number of orders per brand walmart easy
32%
161 Biggest sales day ebay easy
20%
159 Transaction volume from suspended accounts ebay easy
58%
154 Rideshare completion rate lyft easy
25%
153 Project ROI dropbox easy
18%
149 fans by video category google easy
36%
146 Purchase by platform afterpay easy
14%
143 Customer purchase report afterpay easy
14%
134 Expensive departments robinhood medium
38%
133 Small departments robinhood easy
45%
132 Top 3 trending countries affirm medium
9%
130 Newly created accounts affirm easy
37%
128 Completion rate uber easy
26%
125 Active restaurants with fewer than 5 trips per city uber easy
16%
124 Active restaurants by city uber easy
41%
112 Top 3 customers amazon easy
30%
107 Customer count by platform google medium
17%
106 Mobile vs. web google medium
10%
101 Average number of visits per user google easy
14%
98 Most popular user facebook easy
33%
97 Social influencer facebook easy
10%
96 Overall acceptance rate facebook easy
13%
95 Candidate products for subscription amazon hard
13%
93 number of sales for each product this month amazon easy
20%
89 Top 5 artists in the US spotify medium
13%
86 Top song in the US spotify easy
18%
85 Top 4 queries based on click through rate on new year's day facebook hard
7%
84 Click through rate on new year's day facebook medium
9%
82 The top search query on new year's day facebook easy
13%
81 How many people searched on new year's day facebook easy
24%
23 Average spend per customer in Feb 2020 easy
16%
21 Customer who rented the most medium
16%
20 Customer who spent the most medium
14%
19 Most productive actor medium
13%
18 Top film category easy
22%
10 Min and max spend easy
11%
9 Number of high spend customers by month medium
4%
7 Unique customers count by month easy
18%
6 Daily revenue in June, 2020 medium
12%
5 Monthly revenue easy
20%