1. ๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ๋ฐฉ์์ด๋ ๊ฒ ๊น์ง ์ค๋ ๋ถ์ก๊ณ ์์ ๋ฌธ์ ๊ฐ ์๋๋ฐ ์ค๋์ ํ๊ธฐ ์ซ์ด์ ใ
ใ
ใ
...๊ฒ์ผ๋ฆ ์ข ํผ์๋ดค๋ค. ์ฒ์์๋ ECOLI_DATA ํ
์ด๋ธ ๋ด์์ PARENT_ID(๋ถ๋ชจ)๊ฐ ์๋ ๋ฐ์ดํฐ๋ค์ ID๊ฐ์ ์นด์ดํธ ํด ์ฃผ๋ฉด ๋๋๊ฑฐ๋ค ๋ผ๊ณ ์๊ฐ ํด์ ํ๋ ธ๋ค. ๊ฒฐ๊ณผ์ฐฝ์ ๋ณด๋ ์์์ด ์๋ ๋ถ๋ชจ๋ค๋ง ์ถ๋ ฅ์ด ๋๊ณ ์์์ด ์๋ ๋ถ๋ชจ๋ค์ ID๊ฐ์ ์กฐํ๊ฐ ๋์ง ์์๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋์ LEFT JOIN์ ํด ์ฃผ์ด์ผ ๊ฒ ๋ค๊ณ ์๊ฐํ๋ค.์ฝ๋๋ฅผ ์ด๋ ๊ฒ ๊ณ ์ณค๋๋ฐ ์ด๋ ๊ฒ ํ๋๋ฐ๋ ๊ฒฐ๊ณผ๋ ๊ฐ๋ค.์ด๋ ๊ฒ ๊ณ ์น๋ฉด์ ๋ถ๋ชจ ํ
์ด๋ธ์ด ID ๊ฐ์ ID๋ก SELECTํ๊ณ , ์์ ํ
์ด๋ธ์ PARENT_ID๋ฅผ ์นด์ดํ
ํด ์ฃผ์๋ค. ํ๋ฆฐ ์ด์ ๋ WHERE ์ ๋๋ฌธ์ด์๋ค.์์์ด ์๋ ๋ถ๋ชจ๋ ์นด์ดํ
์ ํด์ผ ํ๊ธฐ ๋๋ฌธ์WHERE E.PARENT..
My Tech Blog (์ ์ฒด ๊ธ)
๐ ๐ต๐ ๐๐๐๐ก๐๐๐ข๐, ๐ ๐๐๐ก๐ก๐๐ ๐๐๐๐๐๐๐๐๐ก๐๐๐ ๐๐๐๐ ๐ ๐๐๐๐ ๐ค๐๐ฆ โจ๐ฟ๐๐๐ ๐๐ ๐ ๐๐๐๐๐. ๐ธ๐๐๐๐ฆ ๐๐๐ ๐ต๐๐๐๐ ๐๐๐ฆ.[๋ชฉ์ฐจ]1. ๊ฒฝ๊ธฐ๋์ ์์นํ ์ํ์ฐฝ๊ณ ๋ชฉ๋ก ์ถ๋ ฅํ๊ธฐ2. ์ด๋ฆ์ด ์๋ ๋๋ฌผ์ ์์ด๋ / ์ด๋ฆ์ด ์๋ ๋๋ฌผ์ ์์ด๋3. NULL ์ฒ๋ฆฌํ๊ธฐ4. ๋์ด ์ ๋ณด๊ฐ ์๋ ํ์ ์ ๊ตฌํ๊ธฐ5. ROOT ์์ดํ
๊ตฌํ๊ธฐ6. ์ก์ ๋ฌผ๊ณ ๊ธฐ์ ํ๊ท ๊ธธ์ด ๊ตฌํ๊ธฐ7. โญ์
๊ทธ๋ ์ด๋ ํ ์ ์๋ ์์ดํ
๊ตฌํ๊ธฐ1. ๊ฒฝ๊ธฐ๋์ ์์นํ ์ํ์ฐฝ๊ณ ๋ชฉ๋ก ์ถ๋ ฅํ๊ธฐSELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, (IFNULL(FREEZER_YN,'N')) AS FREEZER_YNFROM FOOD_WAREHOUSEWHERE ADDRESS LIKE '๊ฒฝ๊ธฐ๋%'ORDER BY WAREHOUSE_ID;2. ์ด๋ฆ์ด ์๋ ๋๋ฌผ์ ์์ด๋ & ์ด๋ฆ์ด ์๋ ๋๋ฌผ์ ์์ด๋SELECT ANIMAL_IDFROM ANIMAL_INSWHERE..
1. ๋ฌธ์ ์ค๋ช
๋ฌธ์ ๋ถํ๋ ์ฐ๋(YEAR), ๋ถํ๋ ์ฐ๋๋ณ ๋์ฅ๊ท ํฌ๊ธฐ์ ํธ์ฐจ(YEAR_DEV), ๋์ฅ๊ท ๊ฐ์ฒด์ ID(ID) ๋ฅผ ์ถ๋ ฅํ๋ SQL ๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ๋ถํ๋ ์ฐ๋๋ณ ๋์ฅ๊ท ํฌ๊ธฐ์ ํธ์ฐจ๋ ๋ถํ๋ ์ฐ๋๋ณ ๊ฐ์ฅ ํฐ ๋์ฅ๊ท ์ ํฌ๊ธฐ - ๊ฐ ๋์ฅ๊ท ์ ํฌ๊ธฐ๋ก ๊ตฌํ๋ฉฐ ๊ฒฐ๊ณผ๋ ์ฐ๋์ ๋ํด ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๊ณ ๊ฐ์ ์ฐ๋์ ๋ํด์๋ ๋์ฅ๊ท ํฌ๊ธฐ์ ํธ์ฐจ์ ๋ํด ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํด์ฃผ์ธ์.2. ์ ๊ทผ๋ฐฉ๋ฒ ๊ฐ์ฅ ํฐ ๋์ฅ๊ท ์ ํฌ๊ธฐ๋ฅผ ๊ตฌํด์ค์ผ ํ๋ฏ๋ก MAX(SIZE_OF_COLONY)๋ฅผ ํด ์ค์ผ ํ ๊ฒ ๊ฐ๊ณ ์ฐ๋๋ณ๋ก ๊ตฌํด์ผ ํ๋๊น ์๋์ฐ ํจ์์จ ์ค์ ์ฐ๋๋ก ํํฐ์
๋ ํด ์ฃผ์ด์ผ ํ๋ค. ์ผ๋จ ์ด ์์
์ ๋จผ์ ํ ํ์ ํด๋น ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ง๊ณ ๋ค์ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถ ํด ์ฃผ๊ณ ORDER BY ์ ๋ ฌ์ ํด ์ฃผ์ด์ผ ๊ฒ ๋ค๊ณ ์๊ฐํ๋ค. ๋จผ์ , ..
1. ๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ๋ฐฉ์ ๋จผ์ FISH_INFO ํ
์ด๋ธ์ด๋ FISH_NAME_INFO ํ
์ด๋ธ์ FISH_TYPE ์ปฌ๋ผ์ผ๋ก ์กฐ์ธ ํด ์ค๋ค. ๊ทธ๋ฆฌ๊ณ FISH_NAME์ผ๋ก GROUP BY ํด ์ฃผ๊ณ , LENGTH์ MAX ๊ฐ์ ๊ตฌํด์ฃผ๋ฉด ๋๋ค๊ณ ์๊ฐ ํ๋ค. ๐
๐ปโ๏ธ์ฒซ๋ฒ์งธ ์๋(์คํจ) ์ผ๋จ ์ด๊ฒ ๋ด๊ฐ ์ฒ์์ ์๊ฐํ๋ ์ฟผ๋ฆฌ์ด๋ค. ๋ฐ๋ก ๊ตฌ๋ฌธ ์ค๋ฅ๊ฐ ๋ด๋ค. GROUP BY์ ์ ์ง๊ณ๋์ง ์์ ์ปฌ๋ผ A.ID๊ฐ ์๋ค๊ณ ํ๋ ์ค๋ฅ ๋ฉ์ธ์ง๊ฐ ๋ด๋ค. ํ์ฌ GROUP BY ์ ์ B.FISH_NAME๋ง ์๊ณ , A.ID๋ GROUP BY์ ํฌํจ๋์ง ์์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒ์ด๋ค. ORDER BY์ A.ID๋ฅผ ์ฌ์ฉํ ๋, ๊ทธ ์ด์ด GROUP BY ์ ์ ํฌํจ๋์ด ์์ง ์์ผ๋ฉด ๊ฒฐ๊ณผ๊ฐ ์๊ธฐ์น ์๊ฒ ๋ํ๋ ์ ์๋ค๊ณ ํ๋ค. ๊ทธ๋์ GROUP..
๋ฒ๋์ ๋ฌผ ๋ ์จ๊ฐ ๋ถ์ฉ ์ถ์์ก์ค์์ฆ ์ฐ๋ง์ด๊ธฐ๋ ํ๊ณ ๊ฒฝ๊ธฐ๋ ์์ข์์ ๊ทธ๋ฐ์ง์ผํ๋ชฐ๋ง๋ค ์ท ์ธ์ผ์ ์ง์ง ๋ง์ด ํ๋ ๊ฒ ๊ฐ๋ค๊ตฌ๋์ ์ด๋๋๋ชฐ์์ ์ฌ ๊ฒจ์ธ์ ์ธ ์ฅ๊ฐ ์๋ค.์๋์ ๊ท์ฌ์ด ๋ฐฐ์ ์๋ ์ฅ๊ฐ์ผ๋ก ํ๋ค์ ๋ ดํ๊ฒ ๊ตฌ๋งคํ๋๋ฐ ์ด์๊ฒ ํฌ์ฅ๋์ด์ ์์ ์ข์๋ค > ๊ทธ๋ฆฌ๊ณ ์์ฆ...ํํผํ ๋๋ฌด ํ๊ณ ์ถ๋ค ใ
ใ
ใ
ใ
ใ
ใ
ใ
์ด๋ฐ ๋ฏธ๋ชจ์ง ๋๋์ผ๋ก ํ๊ณ ์ถ์๋ฐใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ํ ํ๋๋ฐ 20-30์ธ๋ฐ ๊ทธ๋ฅ ํ๋ค๊ฐ๋ ํฐ์ผ๋ ์ง ๋ชฐ๋ผ๊ตฌ๋์ ๋จผ์ ๋ฌผ๊ฒฐ๊ณ ๋ฐ๊ธฐ ์ฌ์ ํ๋ฒ ใ
ใ
ใ
ใ
๋ณด๋ ค๊ณ ํ๋ค์ฟ ํก์์ ๋ก์ผ์ง๊ตฌ๋ก ๋ฌผ๊ฒฐ๊ณ ๋ฐ๊ธฐ ์ฃผ๋ฌธํ๊ณ ์ค๋ ์์ค ์์ง ์จ๋ณด๊ธฐ ์ ์ด๊ณ ํ๊ธฐ๋ ๋์ค์ ใ
ใ
ใ
ใ
ใ
๋๊ทผ๋๊ทผ๋นจ๋ฆฌ ํด๋ณด๊ณ ์ถ๋ค ์ด๋ค ๋๋ ์ํ๋๋ฉดํค๋ฅด๋ฏธ์จ๋ ๊ทธ๋ ์ธ์ ์ ๋๋๋๊ฐ ๋ด๋ ๊ฐ์ฑ ๋ง์ ์ธ ํค์ด๋ฅผ ์ํ ใ
ใ
ใ
ใ
ใ
ใ
ใ
๋ด์ง์ค ๋ค๋์์ด๋ ํ๋ฆฌ์ง์ ๋ฝ๊ธ๋จธ๋ฆฌ ๋ ..
1. ๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ๋ฐฉ์ & ์ ๋ต์ฝ๋ ๋ฌธ์ ๋ง ์ฝ์ด๋ ์์ดํ
์ด ์์ ์์ดํ
์ผ๋ก ์
๊ทธ๋ ์ด๋ ๋ ์ ์๋ ๊ฑธ ๋ณด๋, ๊ณ์ธต๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค๊ณ ๋ณด์ฌ์ง๋ค. 1. ๋จผ์ ITEM_INFOํ
์ด๋ธ์์ RARITY ๊ฐ 'RARE'์ธ ์์ดํ
๋ค์ ITEM_ID ๊ฐ์ ์ฐพ๋๋ค.2. ITEM_INFO ํ
์ด๋ธ์ ITEM_ID๋ ITEM_TREE์ PARENT_ITEM_ID๊ฐ ๊ฐ๋ค๋ ์กฐ๊ฑด์ผ๋ก ITEM_INFO์ ITEM TREE ํ
์ด๋ธ์ ์กฐ์ธํ๋ค. WHERE ์ ์ 1์กฐ๊ฑด์ ๋ฌ์์ ITEM_TREE.PARENT_ITEM_ID๊ฐ 1์กฐ๊ฑด ์ ํด๋นํ๋์ง ์ฐพ์ ์ค๋ค. ๊ณ์ ํ๋ฆฐ๋ค....ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
์์ด๊ณ ๋จธ๋ฆฌ์ผ ๐ฆ JOIN 1๋ฒ ํ๋ ์ ๋ต์ฝ๋SELECT ITEM_INFO.ITEM_ID, ITEM_INFO.ITEM_NAME, ITE..
์ค๋ ํ ์ผ ์ค๋ ์ ๋
์ ์ ์ธ๊ณ ํ์
์๋ง ๋ฃจํผ 2๊ฐ ๋น๊ทผ ๊ฑฐ๋ ์ด๋ฒ์ฃผ ์์ฒ๋ง ๊ตญ๊ฐ์ ๊ถ ๊ฐ๋ ๊ธฐ์ฐจํ ์๋งค OK 10์๋ฐ ๊ธฐ์ฐจ ๋ ๋ชฌ์ฆ, ๋
์ฝฉ๋ฒํฐ, ์ฌ๊ณผ, ์ ์ฐ๊ท ์ ๋จน๊ธฐ 11์ ์ผํ๋ฆฌ์คํธ ์ ๋ฆฌ 2.2km 30๋ถ ๋ถ๋ฆฌ์๊ฑฐ ๋ฒ๋ฆฌ๊ธฐ ํ๋ ์ด๋ฆฌ์คํธ ๋
ธ์
์ ์ ๋ฆฌ ์ค๋ ํฌ์คํ
ํ ๊ฑฐ ๋จ์๊ฑฐ ์ฐ๋๋ณ ๋์ฅ๊ท ํฌ๊ธฐ์ ํธ์ฐจ ๊ตฌํ๊ธฐ ๋ฌผ๊ณ ๊ธฐ ์ข
๋ฅ ๋ณ ๋์ด ์ฐพ๊ธฐ ์
๊ทธ๋ ์ด๋ ๋ ์์ดํ
๊ตฌํ๊ธฐ ํน์ ๋ฌผ๊ณ ๊ธฐ๋ฅผ ์ก์ ์ด ์ ๊ตฌํ๊ธฐ ๋นํธ์ฐ์ฐ ๋ณต์ต ์ธ ๊ฐ ์ฐจ์ด ์ ํํ ๋ณต์ต [ํ๋ก๊ทธ๋๋จธ์ค] ๐ฉ๐ป๐ป (MySQL) ํน์ ํ์ง์ ๊ฐ์ง๋ ๋์ฅ๊ท ์ฐพ๊ธฐ ๋ฌธ์ ํ์ด1. ๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ๋ฐฉ์ & ์ ๋ต์ฝ๋SELF JOIN์ผ๋ก ๋ถ๋ชจ-์์ ๊ด๊ณ๋ฅผ ๋์ผํ ํ
์ด๋ธ ๋ด์์ ์กฐ์ธํด์ ํ์ด์ฃผ์.ํ๋์ ํ
์ด๋ธ์ ALIAS๋ฅผ ์ค์ ๋ง์น ๋ ๊ฐ์ ํ
์ด๋ธ์ด ์๋ ๊ฒ์ฒ๋ผ ๋ ๋ฒ..
๋๋ฌด ์ฌ์์ ๊ตณ์ด ๋ธ๋ก๊ทธ์ ์ ์ฌ๋ฆฌ๋ ค๋ค๊ฐ ์ฝ๋๋ง ์ฌ๋ฆฝ๋๋ค.ํ๋ก๊ทธ๋๋จธ์ค > ์ฝ๋ฉํ
์คํธ ์ฐ์ต > SLQ > `SUM, MAX, MIN`์นดํ
๊ณ ๋ฆฌ์ ์๋ ๋ฌธ์ ๋ค์
๋๋ค. ๊ทธ๋ฅ ํ ๋์ ๋ณด๊ณ ๋ฐ๋ก ํ ์ ์๋ 5์ด์ปท ๋ฌธ์ ๋ค์ํ ํฌ์คํ
๋ด์ ์ฌ๋ฌ ๊ฐ ๋ฌถ์ด์ ์ฌ๋ฆฌ๋ ๊ฒ์ด๋ ๊ตฌ์ฒด์ ์ธ ์ค๋ช
์ด ํ์ํ์๊ฑฐ๋ ๊ถ๊ธํ ์ ์ ๋๊ธ๋ก ๋ถํ๋๋ฆฝ๋๋ค.ํ์ธํ๋ ๋๋ก ๋ต ๋๋ฆฝ๋๋ค. 1. ๊ฐ์ฅ ๋น์ผ ์ํ ๊ตฌํ๊ธฐ MAX()SELECT MAX(PRICE) AS MAX_PRICEFROM PRODUCT ํ์ด์ ์ฐ๋ ์ฝ๋SELECT PRICE AS MAX_PRICEFROM PRODUCTORDER BY PRICE DESCLIMIT 1;2. ์ต๋๊ฐ ๊ตฌํ๊ธฐ SELECT MAX(DATETIME)FROM ANIMAL_INS;3. ์ก์ ๋ฌผ๊ณ ๊ธฐ ์ค ๊ฐ์ฅ ํฐ ๋ฌผ๊ณ ..
1. ๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ๋ฐฉ์ & ์ ๋ต์ฝ๋SELF JOIN์ผ๋ก ๋ถ๋ชจ-์์ ๊ด๊ณ๋ฅผ ๋์ผํ ํ
์ด๋ธ ๋ด์์ ์กฐ์ธํด์ ํ์ด์ฃผ์.ํ๋์ ํ
์ด๋ธ์ ALIAS๋ฅผ ์ค์ ๋ง์น ๋ ๊ฐ์ ํ
์ด๋ธ์ด ์๋ ๊ฒ์ฒ๋ผ ๋ ๋ฒ ์ฐธ์กฐํ๋ ๊ฒ์ด๋ค. ๋ด๊ฐ ์๊ณ ์๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ SELF JOIN ์์๋ ์ง์๋ณ ๋งค๋์ ๋ฅผ ๋ํ๋ธ 1๊ฐ์ ํ
์ด๋ธ์ ์๊ธฐ์์ ๊ณผ ์กฐ์ธํ๋ ๊ฒ์ด๋ค. ๋ ๊ณ์ธต์ฟผ๋ฆฌ์์๋ SELF JOIN์ด ๋ง์ด ์ฐ์ธ๋ค. ์ด ๋ฌธ์ ์์๋ ํ๋์ ํ
์ด๋ธ์ ๋ถ๋ชจ์ ์์ด๋์ ์์์ ์์ด๋, ๊ฐ์ฒด์ ํ์ง(GENOTYPE)์ด ๋ชจ๋ ๋ค์ด ์๋ค. ๋ถ๋ชจ์ ํ
์ด๋ธ์ P๋ก, ์์์ ํ
์ด๋ธ์ ๊ทธ๋ฅ A๋ผ๊ณ ๋ณ์นญ์ ์ค ๋ค ์์ํ
์ด๋ธ์ PARENT_ID์ปฌ๋ผ์ ๋ถ๋ชจ ํ
์ด๋ธ์ ID ๊ฐ์ผ๋ก ์กฐ์ธ ํ๋ค. ๊ทธ ํ WHERE ์ ์ `A.GENOTYPE & P.GENOTYPE ..