๋ฌธ์
Brazilian E-Commerce Public Dataset by Olist ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ธ๋ผ์ง์ ์ด์ปค๋จธ์ค ์น์ฌ์ดํธ์ธ Olist Store์ ํ๋งค ๋ฐ์ดํฐ ์ ๋๋ค. ๊ทธ ์ค `olist_orders_dataset` ํ ์ด๋ธ์๋ ์ฃผ๋ฌธ ID, ๊ณ ๊ฐ ID, ์ฃผ๋ฌธ ์ํ, ๊ตฌ๋งค ์๊ฐ ๋ฑ ์ฃผ๋ฌธ ๋ด์ญ ๋ฐ์ดํฐ๊ฐ ๋ค์ด์์ต๋๋ค. Olist์ ์ฃผ๋ฌธ๋ถํฐ ๋ฐฐ์ก๊น์ง ํ๋ก์ธ์ค๋ ๋ค์ ๋จ๊ณ๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๊ณ , ๊ฐ ๋จ๊ณ๋ง๋ค ์๊ฐ์ ๊ธฐ๋กํ๊ณ ์์ต๋๋ค.
- ๊ณ ๊ฐ์ ๊ตฌ๋งค
- `order_purchase_timestamp` ์ปฌ๋ผ์ ๊ตฌ๋งค ์์ ์ด ์ ์ฅ๋จ
- ํ๋งค์๊ฐ ์ฃผ๋ฌธ์ ์น์ธ
- `order_approved_at` ์ปฌ๋ผ์ ์น์ธ ์์ ์ด ์ ์ฅ๋จ
- ํ๋ฐฐ์ฌ์ ๋์ฐฉํ์ฌ ๋ฐฐ์ก ์์
- `order_delivered_carrier_date` ์ปฌ๋ผ์ ๋ฐฐ์ก ์์ ์์ ์ด ์ ์ฅ๋จ
- ๋ฐฐ์ก ์๋ฃ
- `order_delivered_customer_date` ์ปฌ๋ผ์ ๋ฐฐ์ก ์๋ฃ ์์ ์ด ์ ์ฅ๋จ
์ถ๊ฐ๋ก `order_estimated_delivery_date` ์ปฌ๋ผ์๋ ์ฃผ๋ฌธ ์์ ์ ๊ณ์ฐํ ๋ฐฐ์ก ์์ ์๊ฐ์ด ์ ์ฅ๋์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ปฌ๋ผ์ ๊ฐ์ด ‘2017-02-24 00:00:00’๋ก ๋ค์ด์๋ ๊ฒฝ์ฐ, ๋ฐฐ์ก์ 2017๋ 2์ 24์ผ ์์ ๊น์ง ์๋ฃํ๊ฒ ๋ค๋ ์๋ฏธ๋ฅผ ๋ด๊ณ ์์ต๋๋ค.
2017๋ 1์ ํ ๋ฌ ๋์ ๋ฐ์ํ ์ฃผ๋ฌธ์ ๋ฐฐ์ก ์์ธก์ด ์ ํํ๋์ง ๋ถ์์ ํ๋ ค๊ณ ํฉ๋๋ค. ๊ณ ๊ฐ์ ๊ตฌ๋งค ์ผ์๋ณ๋ก ๋ฐฐ์ก ์์ ์๊ฐ ์์ ๊ณ ๊ฐ์๊ฒ ๋์ฐฉํ ์ฃผ๋ฌธ๊ณผ, ๋ฐฐ์ก ์์ ์๊ฐ์ด ์ง๋์ ๊ณ ๊ฐ์๊ฒ ๋์ฐฉํ ์ฃผ๋ฌธ์ ๊ฐ๊ฐ ์ง๊ณํ๋ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํด์ฃผ์ธ์. ๋ฐฐ์ก ์๋ฃ ๋๋ ๋ฐฐ์ก ์์ ์๊ฐ ๋ฐ์ดํฐ๊ฐ ์๋ ๊ฒฝ์ฐ๋ ๊ณ์ฐ์์ ์ ์ธํฉ๋๋ค. ๊ณ์ฐ ๊ฒฐ๊ณผ๋ ๊ตฌ๋งค ๋ ์ง๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ๋์ด์ผ ํ๊ณ , ์๋ ์ปฌ๋ผ์ ํฌํจํด์ผ ํฉ๋๋ค.
- `purchase_date` - ๊ตฌ๋งค ๋ ์ง (์: 2017-01-01)
- `success` - ๋ฐฐ์ก ์์ ์๊ฐ ์์ ๊ณ ๊ฐ์๊ฒ ๋์ฐฉํ ์ฃผ๋ฌธ ์
- `fail` - ๋ฐฐ์ก ์์ ์๊ฐ์ด ์ง๋ ๊ณ ๊ฐ์๊ฒ ๋์ฐฉํ ์ฃผ๋ฌธ ์
๊ฒฐ๊ณผ ๋ฐ์ดํฐ ์์
purchase_date | success | fail |
2017-01-06 | 4 | 0 |
2017-01-07 | 3 | 1 |
- 2017๋ 1์ 6์ผ ๊ตฌ๋งค๋ ์ฃผ๋ฌธ์ ์ด 4๊ฑด์ด๊ณ ๋ชจ๋ ๋ฐฐ์ก ์์ ์ผ ์์ ๋ฐฐ์ก ์๋ฃ๋จ
- 2017๋ 1์ 7์ผ ๊ตฌ๋งค๋ ์ฃผ๋ฌธ์ ์ด 4๊ฑด์ด๊ณ ๊ทธ ์ค 3๊ฑด์ ๋ฐฐ์ก ์์ ์ผ ์์ ๋ฐฐ์ก ์๋ฃ๋์์ผ๋, 1๊ฑด์ ๋ฐฐ์ก ์์ ์ผ ์ดํ์ ๋ฐฐ์ก ์๋ฃ๋จ
์ ์ถ
SELECT DATE(order_purchase_timestamp) AS 'purchase_date'
, SUM(IIF(order_estimated_delivery_date >= order_delivered_customer_date, 1, 0)) AS 'success'
, SUM(IIF(order_estimated_delivery_date < order_delivered_customer_date, 1, 0)) AS 'fail'
FROM olist_orders_dataset
WHERE order_delivered_customer_date IS NOT NULL
AND order_estimated_delivery_date IS NOT NULL
AND purchase_date LIKE '2017-01%'
GROUP BY purchase_date
ORDER BY purchase_date
;