inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

초보자를 위한 BigQuery(SQL) 입문

5-6. JOIN 연습 문제 1~2번

5-6 의 Join 문제 2 해설이 일부 이해가 되지 않습니다

해결된 질문

230

Roeniss Moon

작성한 질문수 3

0

안녕하세요. 5-6 JOIN 연습문제 2번 중, 18:30 쯤에서 group by type1 을 하셨는데 여기 group by pokemon_Cnt (= tp.id) 여야 하지 않는지요?

sql bigquery 데이터-리터러시

답변 1

0

카일스쿨

안녕하세요! 해당 문제의 답을 추상화하면 다음과 같습니다

SELECT
  p.type1, 
  COUNT(tp.id) AS pokemon_cnt
FROM Table_a(서브쿼리)
LEFT JOIN Table_b
ON Table_a.pokemon_id = Table_b.id
WHERE type1 = "Grass"
GROUP BY
  type1

GROUP BY <그룹화할 컬럼>이 들어가야 하므로 type1을 명시해야 type1에 대해 GROUP BY를 해서, pokemon_cnt가 나온답니다. 왜 pokemon_cnt가 되어야 한다고 생각하시나요?(이 이유를 말씀해주시면 더 잘 설명드릴 수 있을 것 같아요. pokemon_cnt를 넣으시면 실행이 안될거에요)

 

COUNT 같은 집계 함수는 GROUP BY에 들어가지 않습니다. SELECT를 하면서 type1을 사용해서 그룹화를 해야 하지요!

0

Roeniss Moon

아, 문제를 제가 잘못 읽었던 것 같아요. 감사합니다!

0

카일스쿨

넵 문제는 "2. 각 트레이너가 가진 포켓몬 중에서 'Grass' 타입의 포켓몬 수를 계산해주세요" 였어요. 트레이너가 가진 포켓몬 = trainer_pokemon 테이블을 사용해야 한다는 것을 위해 드린 문장이에요!

vs code

0

48

2

수업자료 다운

0

46

2

쿼리 화면 문의

0

70

2

4-5. 3번 문제 질

0

64

2

JOIN 1번 문제

1

73

2

battle 테이블 생성 시 생성 오류

0

68

1

5-6. 4번 문제 WHERE 조건의 위치 문의

0

64

2

5-6. 연습문제 4번, type2에 대해서는 고려하지 않아도 될까요?

1

68

2

battle table 오류

0

68

2

location IS NOT NULL 을 굳이 안 써도 되지 않나요?

0

61

2

12강 집계 함수

0

48

1

2-6. 연습 문제 1~3번

0

49

1

안녕하세요! 11번 문제 query문에 관해 질문드립니다

0

49

1

2-6 #2 WHERE vs. HAVING절 사용 여부 차이

0

65

1

섹션 별 퀴즈

0

64

1

espanso 설치 완료 후 프로그램 실행 문제

0

102

2

Syntax에러

0

81

2

4-5. 1번 문제 TIMESTAMP 관련 질문

0

87

2

시각화 도구 사용

0

109

2

11번 문제 GROUP BY 사용하는 이유

0

98

1

big query 쿼리 결과 컬럼 폭

0

107

3

battle 스키마 조건 복사 파일이 열리지 않아요.

0

128

1

6-5 데이터 검증 결과 예시문제

0

78

2

battle 스키마 조건 복사붙여넣기용 자료

0

113

2