번시간 숙제와 LEFT, RIGHT JOIN 질문입니다.
INNER JOIN 마지막 과제에 대해 질문있습니다.
질문1. groupby가 정렬이 안되어서 orderby를 사용하는건지는 아는데요. 쌤 결과는 orderby를 사용안해도 id가 정렬이 되는데
저는 아래처럼 작성했더니 정렬이 안되서요. 저는 왜그런건가요?
SELECT s.id,고객번호,구매날짜,sum(p.가격) FROM sales s
INNER JOIN product p
ON s.상품id =p.id
INNER JOIN user_table ut
ON s.고객번호 =ut.id
GROUP BY s.id,
s.고객번호,
s.구매날짜;
결과값:
12 101 3월8일 2000
6 101 3월4일 2000
1 101 3월2일 6000
14 102 3월9일 7000
11 102 3월8일 3000
2 102 3월2일 6000
5 103 3월4일 6000
4 103 3월3일 3000
질문2. 아래 쿼리는 SELECT 절에 있는 모든 열이 GROUP BY 절에 포함되지 않아 오류가 발생했습니다. 하지만 선생님 해설가의에서는 groupby와 select의 컬럼개수가 달라도 제대로 출력 이되는데요. 문법이 바껴진건가요?저는 아래와 같은 에러가 나와서 위의 문구처럼 작성했는데요.
SELECT s.id,고객번호,구매날짜,p.상품명,p.가격,ut.고객명 FROM sales s
INNER JOIN product p
ON s.상품id =p.id
INNER JOIN user_table ut
ON s.고객번호 =ut.id
GROUP BY s.구매날짜;
에러상황: Error [1055] [42000]: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'homework.s.id' which is not functionall
-
이 게시글은
22에 의해 10 월, 3 주 전에 수정됐습니다.