inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

데이터 분석 SQL Fundamentals

Group By Rollup 실습

rollup

332

ajh7457

작성한 질문수 38

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

with temp_01 as

(select to_char(b.order_date, 'yyyy') as year

, to_char(b.order_date, 'mm') as month

, to_char(b.order_date, 'dd') as day

, sum(a.amount) as sum_amount

from nw.order_items a

join nw.orders b on a.order_id = b.order_id

group by rollup(to_char(b.order_date, 'yyyy'), to_char(b.order_date, 'mm'), to_char(b.order_date, 'dd'))

order by 1, 2, 3)

select case when year = null then year = '총매출' else year end as year,

case when month = null then month ='년 총매출' else month end as month,

case when day = null then day = '월 총매출' else day end as day,

sum_amount

from temp_01

order by year, month, day

;

 

이 구문은 어디가 틀렸나요?

sql postgresql DBMS/RDBMS

답변 1

0

권 철민

안녕하십니까,

아래에서 두가지가 잘못 되었습니다.

select case when year = null then year = '총매출' else year end as year,

case when month = null then month ='년 총매출' else month end as month,

case when day = null then day = '월 총매출' else day end as day,

첫번째는 null 값은 = 로 비교될 수 없습니다. null 값은 is null로 찾아야 합니다.

두번째는 case when 절의 then에 year = '총매출' 같이 다시 조건 값을 해주려면 then case when을 사용해야 합니다. 그게 아니라면 then '총매출'과 같이 최종 결정값을 설정해 줘야 합니다.

따라서 위 SQL은 아래와 같이 변경되면 될 것 같습니다.

select case when year is null then '총매출' else year end as year,

case when month is null then '년 총매출' else month end as month,

case when day is null then '월 총매출' else day end as day,

감사합니다.

0

ajh7457

초면에 사랑합니다❤️

0

권 철민

ㅋㅋ 감사합니다

최신버젼 다운로드

0

29

2

'레벨 유지'의 의미에 대한 질문

0

57

2

date_part

0

57

2

lag/lead offset 관련 질문

0

58

2

join 관련 질문 (inner join, left join)

1

105

2

배치에서 full outer join을 쓴다고 하셨는데 예시를 알 수 있을까요?

0

93

2

Madrid에 살고 있는 고객이 주문한 주문 정보를 구할것. 실습 질문드립니다

0

56

2

rollup시 null값 매출 라벨링

0

57

2

10. 조인 실습 - 02 관련 질문

0

63

1

조인실습03 - join의 pk-fk join

0

111

2

조인실습03 - join의 pk-fk join

0

71

2

(공유)맥, 스키마 import

0

82

2

sql 입문자인데, 이 강의와 sql 코딩테스트와 연관이 있을까요?

0

139

2

1인지 M인지는 결국엔 테이블을 직접 확인을 해야 하는걸까요?

0

134

2

안녕하세요. 튜닝핵심가이드강의 관련해서 여쭤보고 싶어서 남깁니다.

0

93

1

섹션5 Group by 실습-01 강의 예제 질문

0

122

2

섹션2 조인 기반 메커니즘에서 조인 실습 - 04 강의 예제 질문

0

125

2

섹션2 조인 실습 01 강의 질문

0

136

2

lead lag 이해 강의에서 윈도우 절은 사용되지 않습니다.

0

129

1

Dbeaver오류

0

637

2

직원 별 가장 높은 매출

0

119

1

강의순서대로 실습코드순알려주세요.

0

134

1

m:n inner join일 경우 cross조인과 동일하게 동작되는건가요?

0

132

1

rollup

0

91

2