GROUP BY 관련입니다. 이걸 모르니 진도가 넘어가지를 않네요
623
작성한 질문수 8
안녕하세요, GROUP BY 함수 관련 질문입니다.
GROUP BY SupplierID
GROUP BY SupplierID 를 했을 때 SupplierID는 자동으로 중복이 제거가 된 뒤 평균가격이 반환되는 건가요?
GROUP BY SupplierID, CategoryID 는 무슨 뜻인지 모르겠어요
SupplierID별 평균가격과 CategoryID별 평균 가격 이렇게 2개의 결과가 나와야 하는 건가요?
답변 1
0
시간이 좀 지나서 혹시나 하지만
GROUP BY는 같은 값을 가지고 있는 행[컬럼]을 묶어줍니다.[그룹화]
묶어줄 뿐이지 평균 가격을 반환해 주지는 않습니다. 평균 가격을 가져오기 위해서는 avg() 함수를 사용합니다.
GROUP BY를 사용하실 때에는
SELECT [column...] FROM TABLE GROUP BY [column...]
SELECT 뒤에 실제 테이블에 있는 컬럼을 보기 위해 쓰셨으면 GROUP BY에 그대로 적어 주셔야 합니다.
SupplierID, CategoryID 가 나와야 해서 SELECT 뒤에 쓰셨고 GROUP BY 뒤에도 쓰시는 겁니다.
집계 함수로 만든 컬럼은 따로 안 써주셔도 됩니다.
SELECT supplierId, caregoryid, avg(price) <- supplierId, caregoryid는 실제 테이블에 있는 컬럼이고
avg는 평균을 내주는 집계 함수입니다.
간단하게 가상의 컬럼을 만든다고 생각해 주세요 만약 select * from 을 사용하셨으면
SELECT * FROM table group by id; [id라는 컬럼이 있다 치고] 이런식으로 적어주셔도 됩니다.
원하는 컬럼만 확인시에는 select 뒤에 다적어주시고 group by에도 동일하게 적어주세요
리트코드 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
96
2
강의 자료 다운로드
0
90
2
Asian population 문제가 없어요
0
77
2
INNER JOIN 에서 A.키 쓸때 빨간 색 나오고 'dause'
0
66
2
별칭 관련해서 질문 있습니다.
0
79
2
rising temperature 문제 질문
0
98
2
해커랭크 TOP EARNERS 문제 질문
0
99
1
ON 뒤에 질문
0
94
2
INNER JOIN 질문. 강의와 결과값이 다릅니다.
0
196
3
END, 뒤에 * 붙이면 에러가 뜹니다
1
203
2
CustomerID가 중복되서 나타나요
0
233
3
별칭이 전체 테이블을 못 불러와요.
0
142
2
CASE WHEN 쿼리 오류 문의
1
325
3
CASE문제풀이 질문
0
124
1
Customers Who Never Order 풀다가 Alias관련 질문사항
0
136
1
Average Population 질문
0
129
1
Revising Aggregations - The Count Function 질문
0
104
1
Average Population of Each Continent 에대해서 질문
0
193
3
w3schools 에서 쿼리 작성 질문
0
159
1
INNER JOIN 할 때 NULL 값이 안보일 수도 있나요?
0
329
1





