반응형
https://leetcode.com/problems/group-sold-products-by-the-date/
언어별 group by 시 연속되는 문자열을 포함하는 여러 방식을 사용해본 문제였습니다.
📕 풀이방법
📔 풀이과정
sell_date와 distinct한 product 개수 num_sold와, group 화 된 product는 나열할 수 있는 MySQL의 GROUP_CONCAT나 PostgreSQL의 STRING_AGG나 Oracle의 LISTAGG를 사용해 products열을 select해줍니다.
📕 Code
📔 MySQL
SELECT
sell_date,
COUNT(DISTINCT product) AS num_sold,
GROUP_CONCAT(DISTINCT product ORDER BY product ASC) AS products
FROM activities
GROUP BY sell_date;
📔 PostgreSQL
SELECT
sell_date,
COUNT(DISTINCT product) AS num_sold,
STRING_AGG(DISTINCT product, ',' ORDER BY product) AS products
FROM activities
GROUP BY sell_date;
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > SQL' 카테고리의 다른 글
(SQL) - LeetCode (easy) 1527. Patients With a Condition (0) | 2024.04.19 |
---|---|
(SQL) - LeetCode (easy) 1507. Reformat Date (0) | 2024.04.13 |
(SQL) - LeetCode (easy) 1251. Average Selling Price (0) | 2023.12.20 |
(SQL) - LeetCode (easy) 1211. Queries Quality and Percentage (2) | 2023.12.06 |
(SQL) - LeetCode (easy) 1148. Article Views I (0) | 2023.11.09 |