inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

GROUP BY 질문

243

heeya

작성한 질문수 1

0

질문 1. 

SELECT SupplierID

, CategoryID

, AVG(Price) AS avg_price

FROM PRODUCTS

GROUP BY SupplierID, CategoryID

GROUP BY를 부분을 수강하다가 Advanced 질문이 생겼습니다.

1) SupplierID 별로 avg_price를 내림차순으로 보여지게 출력

 - 예를들면  supplierID 가 4인 행들은 avg_price 가 97-> 31 -> 10 순서로 보이도록요

2) 각 SupplierID 별로 categoryID상관없이 MAX(avg_price)를 출력

- SupplierID = 1 이면, 18.5 , Supplier ID =2 이면 20.35, SupplierID = 3 이면 32.5, Supplier ID = 4이면 97

이런식으로 각  SupplierID 마다 avg_price가 MAX 인 값을 뽑고 싶습니다

위 1), 2)의 경우는 어떻게 코드를 작성하면 가능할까요?

sql

답변 1

0

이보민

안녕하세요 heeya님,

첫번째 문의 주신 내용은 아래와 같이 쿼리 작성하시면 됩니다.

SELECT SupplierID

, CategoryID

, AVG(Price) AS avg_price

FROM PRODUCTS

GROUP BY SupplierID, CategoryID

ORDER BY SupplierID ASC, avg_price DESC

두번째 문의 주신 내용은 서브쿼리 또는 윈도우 펑션을 이용하셔야 하는 부분이라 관련 내용 찾아보시면 좋을 것 같습니다. 또한 해당 내용은 SQL 시리즈 고급반에서 다루고 있는 내용이니 혹시 수강하게 되신다면 수강 후 다시 질문 주시면 답변 드리도록 하겠습니다.

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

리트코드 1280. Students and Examinations

0

74

3

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

0

89

2

African Cities 문제관련 질문

0

53

1

SQL 코딩테스트 질문

0

206

1

HACKER RANK에서 문제찾기

0

94

2

강의 자료 다운로드

0

89

2

Asian population 문제가 없어요

0

76

2

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

0

65

2

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

0

78

2

rising temperature 문제 질문

0

98

2

해커랭크 TOP EARNERS 문제 질문

0

97

1

ON 뒤에 질문

0

94

2

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

0

196

3

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

1

203

2

CustomerID가 중복되서 나타나요

0

232

3

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

0

142

2

CASE WHEN 쿼리 오류 문의

1

324

3

CASE문제풀이 질문

0

124

1

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

0

136

1

Average Population 질문

0

127

1

Revising Aggregations - The Count Function 질문

0

101

1

Average Population of Each Continent 에대해서 질문

0

189

3

w3schools 에서 쿼리 작성 질문

0

156

1

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

0

327

1