inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[백문이불여일타] 데이터 분석을 위한 중급 SQL

UNION 해커랭크 문제풀이(난이도 상)

UNION 해커랭크 문제풀이 6분30초 부분

212

함문주

작성한 질문수 27

3

안녕하세요,
강의 정말 잘 듣고 있습니다.

질문드릴 부분은 
GROUP BY를 두번 해주는 개념이 머릿속에 잘 잡히지 않아서요
GROUP BY를 두번 해줫다는건,

X에 먼저 GROUP BY를 한 상태에서 Y에도 GROUP BY를 걸어주는 종속적인? 개념인가요?

아니면 X에 한번 GROUP BY를 걸어주고, Y에도 한번 걸어주는 그런 느낌인가요?
그리고 거기에 COUNT(*)해준것은 정확히

무엇을 카운팅 해주는 건가요? 

sql

답변 1

8

이보민

안녕하세요 함문주님 아래 예시 데이터를 넣어드렸습니다.

GROUP BY를 두개의 컬럼으로 한다는 것은 그룹을 묶어주는 기준이 2개라는 말인데요.
X의 데이터가 같더라도 Y의 데이터가 다르면 그 데이터는 다른 데이터로 취급한다는 의미입니다.
아래의 예시에서는 X=1, Y=2일 때 하나의 그룹으로 묶이고, X=1, Y=3일 때 하나의 그룹으로 묶이는 부분을 봐주시면 될 것 같아요.

COUNT(*)의 경우 위에서 X, Y를 기준으로 그룹으로 묶었을 때 각 그룹에 존재하는 데이터가 몇개씩 있는지를 세는 것이라고 생각해주시면 됩니다.

예시에서 추가적으로 궁금한 점이 있으시거나 이해 안되는 지점이 있으시다면 추가 질문 주세요.

궁금증이 해결되셨길 바랍니다!

리트코드 1280. Students and Examinations

0

91

3

16강 LEFT JOIN 리트코드 (183. Customers Who Never Order) 관련 질문

0

103

2

African Cities 문제관련 질문

0

64

1

SQL 코딩테스트 질문

0

231

1

HACKER RANK에서 문제찾기

0

107

2

강의 자료 다운로드

0

101

2

Asian population 문제가 없어요

0

86

2

INNER JOIN 에서 A.키 쓸때 빨간 색 나오고 'dause'

0

74

2

별칭 관련해서 질문 있습니다.

0

88

2

rising temperature 문제 질문

0

104

2

해커랭크 TOP EARNERS 문제 질문

0

110

1

ON 뒤에 질문

0

105

2

INNER JOIN 질문. 강의와 결과값이 다릅니다.

0

208

3

END, 뒤에 * 붙이면 에러가 뜹니다

1

212

2

CustomerID가 중복되서 나타나요

0

241

3

별칭이 전체 테이블을 못 불러와요.

0

151

2

CASE WHEN 쿼리 오류 문의

1

337

3

CASE문제풀이 질문

0

131

1

Customers Who Never Order 풀다가 Alias관련 질문사항

0

141

1

Average Population 질문

0

141

1

Revising Aggregations - The Count Function 질문

0

108

1

Average Population of Each Continent 에대해서 질문

0

198

3

w3schools 에서 쿼리 작성 질문

0

165

1

INNER JOIN 할 때 NULL 값이 안보일 수도 있나요?

0

331

1