본문 바로가기

TIL

240807 TIL

SQL

오프라인/온라인 판매 데이터 통합하기

 

더보기

ONLINE_SALE 테이블과 OFFLINE_SALE 테이블에서 2022년 3월의 오프라인/온라인 상품 판매 데이터의 판매 날짜, 상품ID, 유저ID, 판매량을 출력하는 SQL문을 작성해주세요. OFFLINE_SALE 테이블의 판매 데이터의 USER_ID 값은 NULL 로 표시해주세요. 결과는 판매일을 기준으로 오름차순 정렬해주시고 판매일이 같다면 상품 ID를 기준으로 오름차순, 상품ID까지 같다면 유저 ID를 기준으로 오름차순 정렬해주세요.

online 테이블과 offline 테이블을 합치는것이다

이것은 컬럼을 추가하는 join 이 아닌 행을 추가해야 되는 상황

 

union에 대해 알아보자.

https://silverji.tistory.com/49

 

UNION 과 UNION ALL 이란

UNION 이란 여러 쿼리문들을 합쳐서 하나의 쿼리문으로 만들어주는 방법이다. 중복된 값을 제거하고 보여준다. 중복된 값을 제거하는 연산이 추가로 수행되기 때문에 UNION ALL보다 속도가 느리다.

silverji.tistory.com

 

select  date_format(sales_date,'%Y-%m-%d') SALES_DATE,
        PRODUCT_ID,
        NULL as USER_ID,
        SALES_AMOUNT
from offline_sale f
where substr(SALES_DATE,1,7)='2022-03'
union
select  date_format(sales_date,'%Y-%m-%d') SALES_DATE,
        PRODUCT_ID,
        USER_ID,
        SALES_AMOUNT
from online_sale o
where substr(SALES_DATE,1,7)='2022-03'
order by 1 asc, 2 asc, 3 asc

 

 

 

ADsP

요약본을 계속 읽고 있다.

이번주 토요일이 시험인데

후.....

'TIL' 카테고리의 다른 글

240813 선형회귀(숫자예측) 하는 방법  (0) 2024.08.13
240809 TIL / recursive CTE 관련  (0) 2024.08.09
240806 통계학기초 연습문제  (0) 2024.08.06
240805 TIL  (0) 2024.08.05
240802 TIL (SQL With, 통계 분포에 대해)  (0) 2024.08.02