안녕하세요!
이번 포스팅은 LeetCode에 있는 Reformat Department Table 문제를 OracleDB로 풀어보려고 합니다!
(모든 문제는 Oracle로 풀이하겠습니다.)
1. 문제 링크 : https://leetcode.com/problems/reformat-department-table/description/
2. 문제
| Column name | Type |
| id | int |
| revenue | int |
| month | varchar |
[문제] Reformat the table such that there is a department id column and a revenue column for each month.
각 월의 부서 ID 열과 수익 열이 있도록 테이블을 리포맷하는 문제입니다.
3. 제출 쿼리 및 설명
최종) 각 월의 부서 ID와 수익 열로 리포맷하는 쿼리를 완성합니다.
SELECT
ID,
SUM(CASE WHEN MONTH = 'Jan' THEN REVENUE END) AS Jan_Revenue,
SUM(CASE WHEN MONTH = 'Feb' THEN REVENUE END) AS Feb_Revenue,
SUM(CASE WHEN MONTH = 'Mar' THEN REVENUE END) AS Mar_Revenue,
SUM(CASE WHEN MONTH = 'Apr' THEN REVENUE END) AS Apr_Revenue,
SUM(CASE WHEN MONTH = 'May' THEN REVENUE END) AS May_Revenue,
SUM(CASE WHEN MONTH = 'Jun' THEN REVENUE END) AS Jun_Revenue,
SUM(CASE WHEN MONTH = 'Jul' THEN REVENUE END) AS Jul_Revenue,
SUM(CASE WHEN MONTH = 'Aug' THEN REVENUE END) AS Aug_Revenue,
SUM(CASE WHEN MONTH = 'Sep' THEN REVENUE END) AS Sep_Revenue,
SUM(CASE WHEN MONTH = 'Oct' THEN REVENUE END) AS Oct_Revenue,
SUM(CASE WHEN MONTH = 'Nov' THEN REVENUE END) AS Nov_Revenue,
SUM(CASE WHEN MONTH = 'Dec' THEN REVENUE END) AS Dec_Revenue
FROM DEPARTMENT
GROUP BY ID
;'SQL > LeetCode' 카테고리의 다른 글
| [SQL] Last Person to Fit in the Bus(LeetCode/Oracle) (0) | 2023.10.20 |
|---|---|
| [SQL] Monthly Transactions I(LeetCode/Oracle) (0) | 2023.10.20 |
| [SQL] Immediate Food Delivery II(LeetCode/Oracle) (0) | 2023.10.20 |
| [SQL] Product Price at a Given Date(LeetCode/Oracle) (0) | 2023.10.19 |
| [SQL] Market Analysis I(LeetCode/Oracle) (1) | 2023.10.19 |