Description

Write a SQL query to find for each date the number of distinct products sold and their names. Return date, count, and products (comma-separated). **Output columns (in order):** sell_date, num_sold, products

Table:activities
ColumnType
sell_dateTEXT
productTEXT

Examples

Input:CREATE TABLE activities (sell_date TEXT, product TEXT); INSERT INTO activities VALUES ('2024-01-01', 'Apple'), ('2024-01-01', 'Banana'), ('2024-01-02', 'Apple');
Output:2024-01-01|2|Apple,Banana 2024-01-02|1|Apple
Explanation:

On 2024-01-01, two distinct products were sold (Apple, Banana). On 2024-01-02, one product (Apple). Products are alphabetically sorted.

Input:CREATE TABLE activities (sell_date TEXT, product TEXT); INSERT INTO activities VALUES ('2024-03-15', 'Laptop'), ('2024-03-15', 'Mouse'), ('2024-03-15', 'Keyboard'), ('2024-03-15', 'Mouse'), ('2024-03-16', 'Monitor'), ('2024-03-16', 'Keyboard');
Output:2024-03-15|3|Keyboard,Laptop,Mouse 2024-03-16|2|Keyboard,Monitor
Explanation:

On 2024-03-15: Laptop, Mouse, Keyboard, Mouse sold. 'Mouse' appears twice but COUNT(DISTINCT product) = 3. Alphabetically sorted: Keyboard, Laptop, Mouse. On 2024-03-16: Monitor and Keyboard sold, count = 2, sorted as Keyboard, Monitor.

Input:CREATE TABLE activities (sell_date TEXT, product TEXT); INSERT INTO activities VALUES ('2024-05-20', 'Smartphone'), ('2024-05-21', 'Tablet'), ('2024-05-21', 'Headphones'), ('2024-05-21', 'Charger'), ('2024-05-22', 'Case');
Output:2024-05-20|1|Smartphone 2024-05-21|3|Charger,Headphones,Tablet 2024-05-22|1|Case
Explanation:

2024-05-20: Smartphone (1 product). 2024-05-21: Tablet, Headphones, Charger (3 products, sorted as Charger, Headphones, Tablet). 2024-05-22: Case (1 product). Each date forms a group with its distinct products concatenated alphabetically.

Constraints

  • Use GROUP_CONCAT

Ready to solve this problem?

Practice solo or challenge other developers in a real-time coding battle!