본문 바로가기

DATABASE23

Q. 장바구니에 가장 먼저 넣은 상품 조회 필요 데이터 : 데이터 모두 instacart002.order_products__prior 장바구니에 넣은 순서 ➜ add_to_cart_order 제품 ID ➜ product_id 조회방법 1. add_to_cart_order 데이터가 1이 아닌 것을 모두 0으로 분류 (컬럼명 1st) 해석 장바구니에 가장 먼저 넣은 상품을 조회할 것이기 때문에 가장 먼저 넣지 않은 데이터는 필요 없음 그렇기 때문에 case when 문을 이용하여 add_to_cart_order 데이터가 1이면 1, 아니면 0으로 변경 2. 상품별 장바구니에 가장 먼저 넣은 상품의 합계 조회 해석 (1) 번에서 구해준 1st 의 합게를 구해주면 된다. 모두 1로 변경해주었기 때문에 sum() 집계함수를 이용해서 구하면 된다. 또한 상.. 2023. 11. 28.
데이터베이스 instacart002 안에 있는 테이블 & 속성 instacart002 diagram table 속성 2023. 11. 28.
Q. 리뷰내용 분석 필요 데이터: 데이터 모두 mydata002.dataset2 리뷰 ➜ Review Text 카테고리➜ Department Name 나이 ➜ Age 조회방법 1. 'size' 가 포함된 리뷰이면 1 아니면 0으로 분류 ( 컬럼명 N_Size ) 해석 case when 조건문을 이용하여 리뷰에 size 가 포함되어 있으면 1 아니면 0으로 분류한다. size 가 포함되어 있는가? 를 표현할 때, like 연산자를 사용한다. like 연산는 문자열의 패턴을 검색하여 일치하는지 확인해준다. % : 0~무한대 까지의 문자 _ : 한글자 size 앞 뒤에는 다른 내용이 들어가 있어도 상관이 없기 때문에 %size% 로 비교하게 된다. 그리고 컬럼명은 N_size 로 설정한다. 2. 'size' 가 포함된 리뷰의 개.. 2023. 11. 27.
Q. 카테고리와 연령대 별로 평점이 가장 낮은 데이터 조회 필요 데이터 : 데이터 모두 mydata002.dataset2 카테고리, 상품의 소분류 ➜ Department Name 리뷰의 평점 ➜ Rating 나이 ➜ Age 조회방법 1. 카테고리와 연령대 별 평균 평점 조회 해석 카테고리와 연령대별로 묶기 위해 group by 를 이용하여 그룹화 해준다. 연령대를 구할 때 floor() 버림함수를 이용하여 구해준다. 평균 평점을 구하기 위해 avg() 집계함수를 사용하여 조회해준다. 2. (1) 번의 내용으로 연령대별 평균평점을 기준으로 순위 산출하기 (중복 등수 허용 X) 해석 (1) 번의 내용을 서브쿼리로 이용하고 순위를 산출하기 위해 중복 등수를 허용하지 않는 row_number() 함수를 사용한다. 이때, 연령대별로 조회하기 위해 partition by .. 2023. 11. 26.
Q. 카테고리가 'Bottoms' 인 데이터 중 평점이 낮은 상품의 리뷰 조회 필요 데이터 : 전 글에서 생성했던 테이블 mydata002.data_stat 와 mydata002.dataset2 사용 카테고리, 상품의 소분류 ➜ Department Name 상품 id ➜ Clothing ID 리뷰 ➜ review text 조회방법 1. data_stat 테이블에서 카테고리가 Bottoms 인 데이터 조회하기 해석 where 조건절을 이용하여 `Department Name` 이 Bottoms 인 데이터만 추출해준다. 2. (1) 번에서 조회된 데이터를 dataset2 테이블에서 모두 추출하기 해석 dataset2 에서 모든 데이터를 추출하기 위해 dataset2 의 clothingID 가 ( data_stat 에서 카테고리가 'Bottoms' 인 'Clothing ID' ) 안에 속.. 2023. 11. 25.
Q. 카테고리 별 평점이 낮은 주요 5개의 상품 조회 필요 데이터 : 데이터 모두 classicmodels.dataset2 상품의 소분류 (카테고리) ➜ Department Name 상품 번호 ➜ Clothing ID 리뷰의 평점 ➜ Rating 조회방법 1. 카테고리와 상품별로 묶어 평균 평점을 조회해보자 해석 카테고리와 상품별로 묶기 위해 group by 를 이용하여 그룹화를 해준다. 평균 평점을 구하기 위해 avg() 집계함수를 이용하고 컬럼명을 AVG_RT 로 설정해준다. 2. (1) 번의 내용을 이용하여 'Department Name' 별로 평균 평점 기준 순위를 산출하기 이 때, 중복순위는 없어야 하며 평균 평점이 낮은 것이 1등이다. 해석 순위를 산출하기 위해 row_number() 함수를 사용해준다. row_number() 함수는 중복 순위 .. 2023. 11. 24.