추가질문드립니다...
211
작성한 질문수 10
답변감사드립니다 선생님! 요즘 시간가는지 모르고 강의듣고있네요 이제 5개중 일주일만에 2개 들었네요! 다름이아니라 제가 이렇게 추가질문 드리는이유는 위에 여쭈어보았던 질문에 대해 제 컴퓨터에서 각각 2개의 sql구문
1. SELECT items.provider, count(*), avg(items.dis_price), avg(items.discount_percent)
FROM items INNER JOIN ranking ON items.item_code=ranking.item_code
GROUP BY items.provider
ORDER BY COUNT(*) DESC;
2. SELECT provider, count(*), avg(dis_price), avg(discount_percent)
FROM items
GROUP BY provider
ORDER BY COUNT(*) DESC;
을 실행해본결과 count(*), avg(items.dis_price), avg(items.discount_percent)의 실행값이 달라서 입니다. 제가 생각하기론 판매자별, 베스트상품 갯수, 평균할인가격, 평균할인율을 베스트상품 갯수가 높은 순으로 출력 할경우에는 판매자나 가격에관한 정보는 items테이블에만 있기에 ranking에 있는 field가 포함되지 않아서 쓰지않아도 될거라고 판단하였습니다. 제가 생각한 바로는 만약 items테이블과 ranking테이블이 추가로 innerjoin하게 될경우에는 all카테고리에서 베스트 상품으로 이미 카운트된 특정상품에 대해 해당 세부카테고리로 들어가서 중복으로 카운트되는 경우가 생기지 않을까 생각했습니다. 그런데 innerjoin 을 쓰는 방식이 SQL 에서 가이드한 정석적인 방법이라고 하셔서 제가 이해한게 맞는지에대해 의구심이 생겼습니다.. 혹시라도 제가 잘못이해하고 있으면 죄송합니다..
답변 1
0
1번은 items.item_code=ranking.item_code 인 데이터에 대해서만,
items.provider, count(*), avg(items.dis_price), avg(items.discount_percent) 을 계산한 것이라고 보여져요.
2번은 items 에 있는 provider 로 그룹핑한 데이터에 대해서만,
provider, count(*), avg(dis_price), avg(discount_percent) 값을 계산한 것이라고 보여져요.
두 구문이 계산하는 기준이 다르기 때문에, 값이 다른 것이 아닌가 생각이 듭니다.
감사합니다.
실습을 따라하는데 데이터베이스가 보이지 않아요
0
52
1
섹션1 4강부터 강의 실행 안됨 이슈
0
75
1
강의 자료 다운로드 관
0
89
1
강의 영상이 안나와요..
0
81
1
섹션4 화면 자체가 안나와요
0
118
1
강의 화면이 안 보이고, 목소리밖에 안나와요 ;;
0
114
1
데이터 삭제 질문
0
121
1
mysql 설치가 되지 않습니다.
0
1385
3
강의 결과 질문 - SQLD, 데이터베이스 설계, 프로젝트 구축 하여 취업
0
147
1
지마켓 파일 불러왔는데, 테이블이 생성이 안됩니다
0
118
1
실습 코드 깃허브 업로드
0
145
1
sql_safe_updates 옵션
0
154
1
sql 설치 문제
0
1423
2
서브쿼리를 JOIN으로 바꾸기
0
155
1
중고급 SQL과 실전 데이터 문의
1
157
1
(맥환경) workbench 이용할 때 패스워드 입력 안해도 자동으로 활성화 가능해져요..
0
350
1
강의 커리큘럼 질문 있습니다.
0
175
1
강의 자료 이미지가 보이지 않습니다.
0
161
1
Join 구문에서 메인 테이블
0
178
1
예제문제 추가 쿼리 질문
0
204
2
강의 화면 출력이 되지 않는 현상
0
211
1
파이썬으로 다루는 MySQL
0
207
1
JOIN 활용 SQL 연습문제
0
179
1
Dbeaver 라는 SQL 쿼리 실행 툴을 써도 될까요?
0
304
1





