์ ๋จธ๋ฆฌ ์ฐ๊ธฐ ์ซ๋ค..๋ด๊ฐ ๋ณด๋ ค๊ณ ์ ๋ฆฌ ํค์๋๋ณ๋ก ๊ตฌ๊ธ๊ฒ์ + GPT + ์ฑ
๋ณด๊ณ ์ ๋ฆฌ์คJOIN๊น์ง๋ง ๋ธ๋ก๊ทธ์ ์ ๋ฆฌํ๊ณ ๊ทธ ๋ค์๊บผ๋ ๊ทธ๋ฅ ํผ์์ ๋ณด๊ณ ์๊ธฐ๋ง ํด์ผ ๊ฒ ๋ค...์ ๋ฆฌํ๋ค๊ฐ ์ปจ๋์
๊ด๋ฆฌ ์ ๋ ๋ฏ ใ
ใ
ใ
....์ด์ฐจํผ ๋ณต์ตํ๋๊ฑฐ๋ผ ๊ฐ๋
์ ๋ค ์๊ณ ํท๊ฐ๋ฆฌ๋ ๋ถ๋ถ๋ง ์ ๋ฆฌํ๊ฑฐ ํฐ์คํ ๋ฆฌ ํ ๊ธฐ๋ฅ ๊ตฌ๋ ค๋ ๋๋ฌด ๊ตฌ๋ฆฌ๋คํ๋ฅผ ๋ง๋ค๋ฉด ์ ๋ฉ๋๋ก ์์์ด ์น ํด์ง๊ณ ํ
๋๋ฆฌ๊ฐ ์๋ณด์ ์ธ๋ด์ฌ ํ
์คํธ..ํฌํ ์ต๋ง ๊น๋ ค์์ผ๋ฉด ๋ง๋๋๋ฐใ
ใ
ํ..... ๋ค์๋ถํฐ๋ Google Spread Sheet๋ก ๋ง๋ค์ด์ผ๊ฒ ์ ์ฐธ๊ณ ๋ก 2024.11.17 ๊ธฐ์ค ๋ด์ฉ๋ฌผ ์ค ํ์ ์ ์๋ณด์ด๊ณ ๋ฐฐ๊ฒฝ์ ๋ง์๋๋ก ์น ํด์ง ๊ฑด ๋ด๊ฐ ๊ณ ์น ์ ์๋ ๋ถ๋ถ์ด ์๋ํ
์คํธ์๋ํฐ์์๋ ๋ฌธ์ ์์ด ๋ณด์ฌ๋ ๋ฐํํ๋ฉด ๋ค ๊นจ์ ธ์์, ๋ช๋ฒ์ ์์ ํด๋ ๋ต์ด ์๋๋ฐ ๋ด์ผ ์ค์ ์ ๋น์ฅ..
My Tech Blog (๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ)
์ค์ํ๊ฑฐ ์ ๋ฆฌํ๊ฑฐ ์๋๊ณ ๋ด๊ฐ ๋ณผ๋ ค๊ณ ํท๊ฐ๋ฆฌ๋๊ฑฐ ์ ๋ฆฌํจ ๊ธฐ๋ณธ์ ์ผ๋ก ORACLE ๊ธฐ์ค์ผ๋ก ์ ๋ฆฌMySQL์ด๋ MSSQL์ ๊ฐ๋ณ์ ์ผ๋ก ๋ฐ๋ก ์ ๋ฆฌ ํด ๋์1. NVL(์ธ์1, ์ธ์2)`์ธ์1`์ ๊ฐ์ด `NULL`์ผ ๊ฒฝ์ฐ `์ธ์2` ๋ฐํ, `NULL` ์๋ ๊ฒฝ์ฐ `์ธ์ 1` ๋ฐํ ํ ๋ง๋๋ก ์ฐ์ฐํด์ผ ํ๋๋ฐ NULL ๊ฐ์ด ์์ผ๋ฉด 0์ผ๋ก ์นํํด์ค์ผ ๋๋๊น 0์ผ๋ก ๋ฐ๊พธ๋ ํจ์๋ผ๊ณ ์ธ์ฐ๋ฉด ๋๋ค. ์๋ฅผ ๋ค๋ฉด ์ํ ๋ฆฌ๋ทฐํ๋๋ฐ ํ์ ์ฌ์ด์ NULL์ด ๊ปด ์์ด์ ํ๊ท ์ ๋ชป ๋ด์ค ๋ ๊ทธ๋ฅ ๋ค 0์ผ๋ก ์นํํ ๋ ์ฐ๋๊ฑฐ๋ผ ์ดํดํ๋ฉด ๋๋ค. NVL(expression, replacement_value)expression: ํ์ธํ ๊ฐ.replacement_value: expression์ด NULL์ผ ๋ ๋์ ์ฌ์ฉํ ๊ฐ. ORACLE `N..
์ค์ํ ๋ด์ฉ์ด ์๋ ๋ด๊ฐ ํท๊ฐ๋ฆฌ๋ ๊ฒ๋ง ์ ๋ฆฌํ ๊ฒ1. SUBSTR๋ค๋ฅธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ๋ฌ๋ฆฌ Oracle๊ณผ SQL์์ SUBSTR ํจ์์ ์ธ๋ฑ์ค๋ 1๋ถํฐ ์์. ์ฆ, ๋ฌธ์์ด์์ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ ์ธ๋ฑ์ค 1์.SUBSTR(string, start_position, [length])start_position: ์ถ์ถ์ ์์ํ ์์น (1๋ถํฐ ์์) length: (์ ํ์ ) ์ถ์ถํ ๊ธธ์ดSELECT SUBSTR('Hello World', 1, 5) AS Substring FROM dual; ์ ์ฟผ๋ฆฌ์์ SUBSTR('Hello World', 1, 5)๋ ๋ฌธ์์ด 'Hello World'์์ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ถํฐ ์์ํ์ฌ 5๊ฐ์ ๋ฌธ์๋ฅผ 'Hello' ์ถ์ถ SELECT SUBSTR('๋ธ๋ํํฌ์ ๋', 3, 2) FROM DUA..
๋ด๊ฐ ๋ณด๋ ค๊ณ ํท๊ฐ๋ฆฌ๋ ๊ฑฐ ์ ๋ฆฌํ ๊ฒ 1. ์ ๊ทํ๋ฐ์ดํฐ์ ์ ํฉ์ฑ(๋ฐ์ดํฐ์ ์ ํ์ฑ๊ณผ ์ผ๊ด์ฑ์ ์ ์งํ๊ณ ๋ณด์ฅ)ํ๊ธฐ ์ํด ์ํฐํฐ๋ฅผ ์์ ๋จ์๋ก ๋ถ๋ฆฌํ๋ ๊ณผ์ ์ด๋ค. ์ ๊ทํ๋ฅผ ํ ๋ ๋ฐ์ดํฐ ์กฐํ ์ฑ๋ฅ์ ๋ณด์ฅ ๋ชปํ์ง๋ง ์
๋ ฅ, ์์ , ์ญ์ ์ฑ๋ฅ์ ์ผ๋ฐ์ ์ผ๋ก ํฅ์๋๋ค๊ณ ๋ณผ ์ ์๋ค. ๋ด๊ฐ ์์ ์ ์ ๋ฆฌํ๊ฑฐ [Database] ์ ๊ทํ ์ฝ๊ฒ ์ดํดํ๊ธฐ, ์ 1์ ๊ทํ, ์ 2์ ๊ทํ, ์ 3์ ๊ทํ, BCNF์ ๊ทํ(Normalization) ๐ ์ ๊ทํ๋? ์ ๊ทํ(Normalization)๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ์์ ์ค๋ณต์ ์ต์ํํ๋๋ก ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๋ ์์
์ด๋ค. ์ ๊ทํ๋ฅผ ํด์ค์ผ๋ก์จ ์ฝ์
, ์ญ์ , ๊ฐฑ์ ๋ฑ ์ด์ํ์awesomepossum.tistory.com 1) ์ 1์ ๊ทํ ์๋ฐ - ํ ์นธ์ , ๋ก ํญ๋ชฉ ์ฌ๋ฌ๊ฐ ๋ค์ด ๊ฐ๊ฑฐ - ํ ..
๋ด๊ฐ ๋ณผ๋ ค๊ณ ์ ๋ฆฌํจ1. ์ํฐํฐ์ ํน์ง ๋ค์ ์ค ์ํฐํฐ๊ฐ ๊ฐ๋ ํน์ง์ผ๋ก ์ ํฉํ์ง ์์ ๊ฒ์? - ๋ค๋ฅธ ์ํฐํฐ์ 1๊ฐ ์ด์์ ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ด์ผ ํ๋ค- ๋ฐ๋์ ์์ฑ์ ๊ฐ์ง๊ณ ์์ด์ผ ํ๋ค.- `1๊ฐ ์ด์`์ ์ธ์คํด์ค๋ฅผ ๊ฐ์ง๊ณ ์์ด์ผ ํ๋ค. => 2๊ฐ- ์ ๋ํฌํจ์ ๋ณด์ฅํ ์ ์๋ ์๋ณ์๊ฐ ์์ด์ผ ํ๋ค. ํ ๊ฐ์ ์ํฐํฐ๋ ๋ ๊ฐ ์ด์์ ์ธ์คํด์ค๋ฅผ ๊ฐ๋๋ค.ํ ๊ฐ์ ์ธ์คํด์ค๋ ๋ ๊ฐ ์ด์์ ์์ฑ์ ๊ฐ๋๋ค.ํ ๊ฐ์ ์์ฑ์ ํ๋์ ์์ฑ ๊ฐ์ ๊ฐ๋๋ค. ์ํฐํฐ : ํ
์ด๋ธ ์ ์ฒด (์: `๊ณ ๊ฐํ
์ด๋ธ`)์ธ์คํดํธ : ํ (์: `๊ณ ๊ฐ 1๋ช
`)์์ฑ : ์ด (์: ๊ณ ๊ฐ์ `์ด๋ฆ`,`์ ํ๋ฒํธ`,`์ฃผ์`)2. ๊ธฐ๋ณธ ์ํฐํฐ, ์ค์ฌ ์ํฐํฐ, ํ์ ์ํฐํฐ๋ฐ์์์ ์ ๋ฐ๋ฅธ ๋ถ๋ฅ`๊ธฐ๋ณธ ์ํฐํฐ`๋ ๋
๋ฆฝ์ ์ผ๋ก ์์ฑ๋์ด ์์ ๋ง์ ์ฃผ์๋ณ์๋ฅผ ๊ฐ์ง๋ฉฐ ๋ค..
๐ 1. ๋ฌธ์ ์ค๋ช
์ํฌ์๋ ์ํ์ ํฌ๊ธฐํ ์ฌ๋์ ์ค๋ง์
๋๋ค. ์ํฌ์ ์ผ์ธ๋ฐฉ์ ๋ชจ์๊ณ ์ฌ์ ์ํ ๋ฌธ์ ๋ฅผ ์ ๋ถ ์ฐ์ผ๋ ค ํฉ๋๋ค. ์ํฌ์๋ 1๋ฒ ๋ฌธ์ ๋ถํฐ ๋ง์ง๋ง ๋ฌธ์ ๊น์ง ๋ค์๊ณผ ๊ฐ์ด ์ฐ์ต๋๋ค. 1๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1๋ฒ ๋ฌธ์ ๋ถํฐ ๋ง์ง๋ง ๋ฌธ์ ๊น์ง์ ์ ๋ต์ด ์์๋๋ก ๋ค์ ๋ฐฐ์ด answers๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ์ฅ ๋ง์ ๋ฌธ์ ๋ฅผ ๋งํ ์ฌ๋์ด ๋๊ตฌ์ธ์ง ๋ฐฐ์ด์ ๋ด์ return ํ๋๋ก solution ํจ์..
์์ ์ ์ผ์ด ์์ด์ ๊ด์ฃผ ์ ๋จ๋ํ๊ต ๊ทผ์ฒ์ ๊ฐ๋ค๊ฐ ์๊ฐ์ด ๋จ์์ ๊ทธ ์์ ์๋ ์๋ฆฝ๋ฌด๋ฑ๋์๊ด์ ๋ค์ด๊ฐ๋ค. 1์๊ฐ ์ ๋ ์๊ฐ๋ง ๋ผ์ฐ๋ ค๊ณ ํ๋๋ฐ, ๊ธ์๊ฐ ๋ง์ ์ฑ
์ ์ซ์ด์ ๊ทธ๋ฆผ์ด ๋ง์ ์ฑ
์ ๊ณ ๋ฅด๋ ์ค์ ๋์ ๋ค์ด์๋ ์ฑ
600ํ์ด์ง๊ฐ ๋๋ ๋๊บผ์ด ์ฑ
์ด์์ง๋ง ์ด๊ตญ์ ์ด๊ณ ์๋ฆ๋ค์ด ์ ๋ฝ ํ์ผ์ ํ๋ คํจ์ด ๋์ ์ฌ๋ก ์ก์๋ค. ๊ทธ๋์ ๋์ค์ ๋ค๋ฅธ ํธ๋ ์ฐพ์ ์ฝ์ด๋ณด๋ ค๊ณ ์ฌ์ง๊น์ง ์ฐ์ด ๋์๋ค. ์ฐ๋ฆฌ๋๋ผ์์๋ ๊ณ ๋ ค์ฒญ์๊ฐ ์ ๋ช
ํ ๊ฒ์ฒ๋ผ ๋์๊ธฐ๋ ๋์์์ ๋ง๋ก ํ๊ณ ์ฐ๋ฆฌ ์ํ์์ ์ค์ํ ์ฅ์ํ์ผ๋ก ์๋ฆฌ ์ก์๋ค. ํนํ ์ด ์ฑ
์์ ์ธ์๊น์๋ ๋ถ๋ถ์ ์ ๋ฝ์์ ๋์๊ธฐ๋ ์๊ธฐ ๋ฟ๋ง์ด ์๋๋ผ, ๊ฑด์ถ ์ฅ์ ์์์์๋ ๋ง์ ๋ถ๋ถ์ ์์น ํ๊ณ ์๋ค. ํนํ ์๊ฐ๊ฐ ์ต๊ณ ๋ก ๊ผฝ์ ์๊ธฐ์๊ธฐํ '๋ ๋ธ๋ฆฌํ ๊ณต์ ๋ถ์ธ์ ์ง'์ ํ๋ คํจ์ ๊ทน์น์ธ '์ฐํ๋ง๋ฆฌ..
๋ช ๋ฌ ์ ์ ๋์๊ด์ ๊ฐ๋ค๊ฐ ์ด๋ผ๋ ์ฑ
์ ์ฝ์๋ค. ๊ธ์จ๊ฐ ๋ง์ ์ฑ
๋ณด๋ค ๊ทธ๋ฆผ ์์ฃผ๋ก ํธ์ํ๊ฒ ๋ณด๊ณ ์ถ์ด์ ๊ณ ๋ฅธ ์ฑ
์ด์๋๋ฐ, ์ ๋ง ํน๋ณํ ์ฑ
์ด์๋ค. ํ๋ คํ๋ฉด์ ์ ๊ตํ ์ ๋ฝ์ ํ์ผ ์์์ด ๋๋ฌด ์๋ฆ๋ค์ ๋ค. ๊ทธ๋์ ์ง์ ์์ ์ด ์ฑ
์ ๊ตฌ๋งคํ์ฌ ์์ฅํ๊ณ ์ถ์์ผ๋ ์์ ๋ฝํธ์ ํ์ ์ด์ด์ ๊ตฌ๋งคํ์ง ๋ชปํ๋ค. ์ค๋ ๊ฐ์๊ธฐ ์ด ์ฑ
์๊ฐ์ด ๋์ ๋ถ์ ๋ฝํธ์ ์ฃผ๋ฌธ ํด ๋ณด์๋ค > ํ๋ก๊ทธ๋๋จธ์ค ๋ ๋ฒจํ
์คํธ ์ฒซ๋ฒ์งธ ๋ฌธ์ ์ฝ๋๋ง ํฌ์คํ
ํ๋ก๊ทธ๋๋จธ์ค ์์ ํ์ 2 macOS์์๋ ๊ณต์ธ์ธ์ฆ์ ๋ค์ด ์๋๋ ๋ฌธ์ safari๋ง ์๋๋์ง chrome์ ๋๋์ง ํ์ธํด๋ณด์ SQLโญ ์ด๋ก Ie/Crow'sFoot, Peter Chen, IDEF1X, Barker์๋ณ์-๋น์๋ณ์ ๊ด๊ณ๊ธฐ๋ณธ, ์ค์ฌ, ํ์ ์ํฐํฐ์ค๋ณต, ๋น์ ์ฐ์ฑ, ๋น์ผ๊ด์ฑ์ 1์ ๊ทํ - ์ 3์ ๊ทํ..