๋ฐฐ์ก ์์ ์ผ ์์ธก ์ฑ๊ณต๊ณผ ์คํจ -- ์ต์ข
SELECT strftime('%Y-%m-%d', order_purchase_timestamp) as "purchase_date", SUM(CASE WHEN order_estimated_delivery_date >= order_delivered_customer_date THEN 1 ELSE 0 END) as "success", SUM(CASE WHEN order_estimated_delivery_date # ์ ๊ทผ ๋ฐฉ์ 1. success์ fail ์ผ์ด์ค๋ฅผ ๊ฐ๋ณ ์ปฌ๋ผ์ผ๋ก ๋ง๋ค์ด์ผ๊ฒ ๋ค.2. SUM (ํน์ COUNT๋ ์๊ด์์) ์ง๊ณ ํ ์ผ์๋ณ ๊ทธ๋ฃนํํด์ผ๊ฒ ๋ค.3. ๊ธฐํ ์กฐ๊ฑด๋ค ์ถฉ์กฑ e.g., 17๋
1์ ๋ฐ์ดํฐ๋ง, ๋ ์ง ์ค๋ฆ์ฐจ์ # ๋ฐฐ์ด์ 1. SQLite..
1๏ธโฃ ์๋ธ์ฟผ๋ฆฌ (Subquery) SQL ๊ตฌ๋ฌธ ๋ด์ ํฌํจ๋ ์ฟผ๋ฆฌ, (๋ฉ์ธ)์ฟผ๋ฆฌ ์ ์ฟผ๋ฆฌ โ
๋ชฉ์ ๋ฐ์ดํฐ ํํฐ๋ง ๋ณต์กํ ์ง๊ณ JOIN โ
์์น SELECT ๋ฌธ FROM ์ WHERE ์ HAVING ์ ORDER BY ์ โ
์ ํ ๋ฉ์ธ ์ฟผ๋ฆฌ์์ ์ฐ๊ด์ฑ - ๋น์๊ด ์๋ธ์ฟผ๋ฆฌ ์๋ฌด๊ฒ๋ ์ฐธ์กฐํ์ง ์๊ณ , ์ฐ๊ณ๋์ง ์๊ณ , ๋จ๋
์ผ๋ก ์คํ๋๋ ์๋ธ์ฟผ๋ฆฌ ๋ฉ์ธ ํ
์ด๋ธ๊ณผ ์กฐ์ธ ์กฐ๊ฑด์ด ๊ฑธ๋ฆฌ์ง ์๋ ์๋ธ์ฟผ๋ฆฌ ์ฐ์ฐ์(=, , , =) + [ all / any / in ] ์ฌ์ฉํ ์กฐ๊ฑด ๋ถ์ฌ ๊ฐ๋ฅ -- ๋น์๊ด ์๋ธ์ฟผ๋ฆฌ -- (์์) ์ธ๋(India)์ ์๋ ๋ชจ๋ ๋์๋ฅผ ๋ฐํ SELECT city_id, city_name FROM city WHERE country_id (SELECT country_id FROM country WHER..
1๏ธโฃ ๋ทฐ (View) DB์์ ํ๋ ์ด์์ ํ
์ด๋ธ๋ก๋ถํฐ ํ์๋ ๊ฐ์ ํ
์ด๋ธ ํ
์ด๋ธ๊ณผ ๋ฌ๋ฆฌ ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง๊ฐ ํฌํจ๋์ง ์์ ex. ํ
์ด๋ธ์ ๋น๊ณต๊ฐ๋ก ์ ์งํ๊ณ , ์ฌ์ฉ์๊ฐ ๋ทฐ ์งํฉ์ ํตํด์๋ง ๋ฐ์ดํฐ์ ์ ๊ทผ ๊ฐ๋ฅํ๋๋ก DB ์ค๊ณ 2๏ธโฃ ํน์ง ๊ฐ์ ํ
์ด๋ธ ์ค์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ์ง ์์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅ ๋ทฐ๋ฅผ ํตํด ์ ์ํ ์ฟผ๋ฆฌ๋ ์ฌ์ฌ์ฉ ๊ฐ๋ฅ ๋ฐ์ดํฐ ๋ณด์ ๋ทฐ๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ๋ฐ์ดํฐ๋ง ์ฌ์ฉ์์๊ฒ ๋
ธ์ถ ๊ฐ๋ฅ ๋ฐ์ดํฐ ์ง๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ ์ง๊ณํ์ฌ DB์ ์ ์ฅํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ฌ์ค์ผ๋ก์ ์ค๊ณ์ ์ ์ฐ์ฑ ํฅ์ ๋จ์ํ ๋ณต์กํ ์ฟผ๋ฆฌ๋ฅผ ๋ทฐ๋ก ์ ์ํ์ฌ ๊ฐ๋จํ๊ฒ ๋ง๋ฆ 3๏ธโฃ ๊ตฌ์กฐ -- ๋ทฐ ๊ตฌ์กฐ CREATE VIEW view_name AS SELECT col1, col2, … FROM table; -- ๋ทฐ ์์ CREATE VIEW EmailVie..
1๏ธโฃ INSERT ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ/์ฝ์
ํ๋ ๋ช
๋ น์ด โ
๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฐฉ๋ฒ ์ปฌ๋ผ ๋ฆฌ์คํธ ๋ช
์ํ๊ธฐ ์ด๋ค ์ปฌ๋ผ์ ๊ฐ์ ๋ฃ์์ง ๋ช
์ ์ปฌ๋ผ ์์์ ๋ง๊ฒ ์์ฑ ์ปฌ๋ผ ๋ฆฌ์คํธ ๋ช
์ํ์ง ์๊ธฐ ๋ชจ๋ ์ปฌ๋ผ์ ๊ฐ์ ๋ฃ์ ๊ฒ์ด๋ผ๋ ์๋ฏธ ํ
์ด๋ธ์์ ์ ์๋ ์ปฌ๋ผ ๊ฐ์์ ๋ง์ถฐ ์์๋๋ก ๊ฐ์ ์
๋ ฅ โ
๊ตฌ์กฐ -- โ ์ปฌ๋ผ ๋ฆฌ์คํธ ๋ช
์ INSERT INTO table1 (col1, col2, …) VALUES (val1, val2, …) -- โ ์์ INSERT INTO player (name, height, weight) VALUES ('KIM', 170, 65) -- โก ์ปฌ๋ผ ๋ฆฌ์คํธ ๋ช
์ X INSERT INTO table1 VALUES (val1, val2, …) -- โก ์์ INSERT INTO player VALUES (..
1๏ธโฃ DDL (Data Definition Language) : ๋ฐ์ดํฐ ์ ์ ์ธ์ด ๊ด๊ณํ DB์ ๊ตฌ์กฐ๋ฅผ ์ ์ํ๋ ์ธ์ด CREATE : ํ
์ด๋ธ ์์ฑ ALTER, RENAME : ๋ณ๊ฒฝ DROP : ์ญ์ 2๏ธโฃ DML (Data Manipulation Language) : ๋ฐ์ดํฐ ์กฐ์ ์ธ์ด ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ํ๋ ์ธ์ด INSERT : ๋ฐ์ดํฐ ์ฝ์
SELECT : ์กฐํ UPDATE : ์์ DELETE : ์ญ์ 3๏ธโฃ DCL (Data Control Language) : ๋ฐ์ดํฐ ์ ์ด ์ธ์ด DB ์ ๊ทผ, ์ ์ดํ๊ธฐ ์ํ ์ฌ์ฉ ๊ถํ์ ๊ด๋ฆฌ(๋ถ์ฌ/๋ฐํ)ํ๋ ์ธ์ด GRANT : ๋ถ์ฌ REVOKE : ํ์ 4๏ธโฃ TCL (Transaction Control Language) : ํธ๋์ญ์
์ ์ด ์ธ์ด DML์์ ์กฐ์๋ ๊ฒฐ๊ณผ..