To find the number of customers placing orders in each month, you would need a table that records the orders placed by customers, such as an orders
table. This table would typically include fields such as order_id
, customer_id
, and order_date
.
Assuming the table is named orders
and contains these columns:
order_id
: A unique identifier for each order.customer_id
: A unique identifier for each customer.order_date
: The date the order was placed.
The SQL query to count the number of unique customers placing orders each month would look like this:
SELECT
EXTRACT(YEAR FROM order_date) AS year,
EXTRACT(MONTH FROM order_date) AS month,
COUNT(DISTINCT customer_id) AS num_customers
FROM
orders
GROUP BY
EXTRACT(YEAR FROM order_date),
EXTRACT(MONTH FROM order_date)
ORDER BY
year, month;
Explanation:
EXTRACT(YEAR FROM order_date)
: Extracts the year from theorder_date
column.EXTRACT(MONTH FROM order_date)
: Extracts the month from theorder_date
column.COUNT(DISTINCT customer_id)
: Counts the number of unique customers who placed orders in that month.GROUP BY
: Groups the results by year and month.ORDER BY
: Orders the results first by year and then by month to ensure chronological order.
Example Output:
year | month | num_customers |
---|---|---|
2023 | 1 | 150 |
2023 | 2 | 180 |
2023 | 3 | 200 |
... | ... | ... |
This query provides the number of unique customers who placed orders for each month.
No comments:
Post a Comment