데이터분석 SQL - Join(2)

Data Architect / Engineer·2024년 1월 6일

데이터분석_SQL

목록 보기
2/4

ERD 참조

  • nw 스키마 ERD 참조

예제

  1. 고객명 Antonio Moreno 가 1997년에 주문한 주문 정보를
    주문아이디, 주문일자, 배송일자, 배송주소를 고객 주소와 함께 데이터를 추출.
SELECT a.contact_name, a.address, b.order_id, b.order_date, b.shipped_date, b.ship_address
FROM nw.customers a
	JOIN nw.orders b ON a.customer_id = b.customer_id
WHERE a.contact_name = 'Antonio Moreno'
AND b.order_date BETWEEN to_date('19970101', 'yyyymmdd') AND to_date('19971231', 'yyyymmdd');

  1. Berlin에 살고 있는 고객이 주문한 주문 정보를 고객명, 주문id, 주문일자, 주문접수 직원명, 배송업체명 데이터를 추출.
SELECT a.customer_id, a.contact_name, b.order_id, b.order_date, c.first_name||' '||c.last_name AS employee_name, d.company_name AS shipper_name
FROM nw.customers a
	JOIN nw.orders b ON a.customer_id = b.customer_id
	JOIN nw.employees c ON b.employee_id = c.employee_id
	JOIN nw.shippers d ON b.ship_via = d.shipper_id
WHERE a.city = 'Berlin';

  1. Beverages 카테고리에 속하는 모든 상품아이디와 상품명, 상품을 제공하는 supplier 회사명 정보 데이터 추출.
SELECT a.category_id, a.category_name, b.product_id, b.product_name,c.supplier_id, c.company_name
FROM nw.categories a
	JOIN nw.products b ON a.category_id = b.category_id
	JOIN nw.suppliers c ON b.supplier_id = c.supplier_id
WHERE a.category_name = 'Beverages';

  1. 고객명 Antonio Moreno가 1997년에 주문한 주문 상품정보를 고객주소, 주문아이디, 주문일자, 배송일자, 배송주소 및 주문 상품아이디, 주문 상품명, 주문 상품별 금액, 카테고리명, supplier 명을 데이터를 추출.
SELECT a.contact_name, a.address, b.order_id, b.order_date, b.shipped_date, b.ship_address,
		c.product_id, d.product_name, c.amount, e.category_name, f.contact_name AS supplier_name
FROM nw.customers a
	JOIN nw.orders b ON a.customer_id = b.customer_id
	JOIN nw.order_items c ON b.order_id = c.order_id
	JOIN nw.products d ON c.product_id = d.product_id
	JOIN nw.categories e ON d.category_id = e.category_id
	JOIN nw.suppliers f ON d.supplier_id = f.supplier_id
WHERE a.contact_name = 'Antonio Moreno'
AND b.order_date BETWEEN to_date('19970101', 'yyyymmdd') AND to_date('19971231', 'yyyymmdd');

profile
질문은 계속돼 아오에

0개의 댓글