ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด/DataBase 30

[SQL] ์˜ค๋ผํด ๋‚ด์žฅ ํ•จ์ˆ˜ - DECODE ํ•จ์ˆ˜์™€ CASE ๋ฌธ ( ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ )

1. DECODE ํ•จ์ˆ˜ - ๊ธฐ์ค€์ด ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋จผ์ € ์ง€์ •ํ•œ ํ›„ ํ•ด๋‹น ๋ฐ์ดํ„ฐ ๊ฐ’์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜ - ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์‚ฌ์šฉํ•˜๋Š” if ์กฐ๊ฑด๋ฌธ ๋˜๋Š” switch-case ๋ฌธ๊ณผ ์œ ์‚ฌ - ๋งˆ์ง€๋ง‰์˜ '์œ„ ์กฐ๊ฑด 1~n๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ' ๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด NULL ๋ฐ˜ํ™˜ - ์กฐ๊ฑด๋ณ„๋กœ ๋™์ผํ•œ ์ž๋ฃŒํ˜•์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•จ DECODE([๊ฒ€์‚ฌ ๋Œ€์ƒ์ด ๋  ์นผ๋Ÿผ or ๋ฐ์ดํ„ฐ / ์—ฐ์‚ฐ์ด๋‚˜ ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ], [์กฐ๊ฑด 1], [๋ฐ์ดํ„ฐ๊ฐ€ ์กฐ๊ฑด 1๊ณผ ์ผ์น˜ํ•  ๋•Œ ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ], [์กฐ๊ฑด 2], [๋ฐ์ดํ„ฐ๊ฐ€ ์กฐ๊ฑด 2๊ณผ ์ผ์น˜ํ•  ๋•Œ ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ], … … [์กฐ๊ฑด n], [๋ฐ์ดํ„ฐ๊ฐ€ ์กฐ๊ฑด n๊ณผ ์ผ์น˜ํ•  ๋•Œ ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ], [์œ„ ์กฐ๊ฑด 1~n๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๊ฒฐ๊ณผ]) -- 1. SELECTEMPNO, ..

[SQL] ์˜ค๋ผํด ๋‚ด์žฅ ํ•จ์ˆ˜ - NULL ์ฒ˜๋ฆฌ ํ•จ์ˆ˜ ( ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ )

1. NULL ์ฒ˜๋ฆฌ ํ•จ์ˆ˜๋ž€ - ํŠน์ • ์นผ๋Ÿผ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ NULL์ผ ๊ฒฝ์šฐ ์—ฐ์‚ฐ ์ˆ˜ํ–‰์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฅผ NULL์ด ์•„๋‹Œ ๋‹ค๋ฅธ ๊ฐ’์œผ๋กœ ๋Œ€์ฒดํ•ด ์ฃผ์–ด์•ผ ํ•  ๋•Œ๊ฐ€ ๋ฐœ์ƒ 2. NVL ํ•จ์ˆ˜ - NVL(NULL ์—ฌ๋ถ€๋ฅผ ๊ฒ€์‚ฌํ•  ๋ฐ์ดํ„ฐ or ์นผ๋Ÿผ, NULL์ผ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๋ฐ์ดํ„ฐ) - ์ฒซ ๋ฒˆ์งธ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๊ฐ€ NULL์ด ์•„๋‹ˆ๋ฉด ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ฐ˜ํ™˜ํ•˜๊ณ , NULL์ด๋ผ๋ฉด ๋‘๋ฒˆ์งธ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ์— ์ง€์ •ํ•œ ๊ฐ’์„ ๋ฐ˜ํ™˜ 3. NVL2 ํ•จ์ˆ˜ - NVL(NULL ์—ฌ๋ถ€๋ฅผ ๊ฒ€์‚ฌํ•  ๋ฐ์ดํ„ฐ or ์นผ๋Ÿผ, NULL์ด ์•„๋‹ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๋ฐ์ดํ„ฐ, NULL์ผ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๋ฐ์ดํ„ฐ) - NVL ํ•จ์ˆ˜์™€ ๋‹ค๋ฅด๊ฒŒ NULL์ด ์•„๋‹ ๊ฒฝ์šฐ ๋ฐ˜ํ™˜ํ•  ๋ฐ์ดํ„ฐ ๋˜ํ•œ ์ง€์ •์ด ๊ฐ€๋Šฅ

[SQL] ์˜ค๋ผํด ๋‚ด์žฅ ํ•จ์ˆ˜ - ํ˜• ๋ณ€ํ™˜ ํ•จ์ˆ˜ ( ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ )

1. ํ˜• ๋ณ€ํ™˜ ํ•จ์ˆ˜๋ž€ - ์˜ค๋ผํด์—์„œ ์ œ๊ณตํ•˜๋Š” ์ž๋ฃŒํ˜•์„ ํ•„์š”์— ๋”ฐ๋ผ ๋ฐ”๊ฟ” ์ฃผ์–ด์•ผ ํ•  ๋•Œ ์ง€์ •๋œ ์ž๋ฃŒํ˜•์„ ๋ฐ”๊ฟ”์ฃผ๋Š” ํ•จ์ˆ˜ - ์•”์‹œ์  ํ˜• ๋ณ€ํ™˜(implicit type conversion) : ์ž๋™ ํ˜• ๋ณ€ํ™˜. ์ˆซ์ž๋กœ ์ธ์‹ ๊ฐ€๋Šฅํ•œ ๋ฌธ์ž ๋ฐ์ดํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ์ˆซ์ž๋กœ ๋ฐ”๋€ ํ›„ ์—ฐ์‚ฐ ์ˆ˜ํ–‰ - ๋ช…์‹œ์  ํ˜• ๋ณ€ํ™˜ (explicit type conversion) : ํ˜• ๋ณ€ํ™˜ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง์ ‘ ์ž๋ฃŒํ˜•์„ ๋ณ€ํ™˜ํ•ด ์ฃผ๋Š” ๋ฐฉ์‹ 2. ๋‚ ์งœ, ์ˆซ์ž ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌธ์ œ ๋ฐ์ดํ„ฐ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” TO_CHAR ํ•จ์ˆ˜ - 'NLS_DATE_LANGUAGE = language' ์˜ language์—๋Š” KOREAN, ENGLISH, JAPANESE ๋“ฑ์ด ๊ฐ€๋Šฅ TO_CHAR([๋‚ ์งœ ๋ฐ์ดํ„ฐ], [์ถœ๋ ฅ๋˜๊ธธ ์›ํ•˜๋Š” ๋ฌธ์ž ํ˜•ํƒœ]) TO_CHAR([๋‚ ์งœ ๋ฐ์ดํ„ฐ], [์ถœ๋ ฅ..

[SQL] ์˜ค๋ผํด ๋‚ด์žฅ ํ•จ์ˆ˜ - ๋‚ ์งœ ํ•จ์ˆ˜ ( ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ )

1. ๋‚ ์งœ ํ•จ์ˆ˜๋ž€ - ๋‚ ์งœ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ๋Š” ํ•จ์ˆ˜ 2. ํ˜„์žฌ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„ ์ •๋ณด๋ฅผ ์ถœ๋ ฅํ•˜๋Š” SYSDATE ํ•จ์ˆ˜ - ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ์—†์ด ํ˜„์žฌ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„ ์ •๋ณด๋ฅผ ๊ตฌํ•ด ๋ฐ˜ํ™˜ -- 1. 2. 3. SELECT SYSDATE AS NOW, SYSDATE - 1 AS YESTERDAY, SYSDATE + 1 AS TOMORROW FROMDUAL; (1) SYSDATE AS NOW : ์นผ๋Ÿผ ์ด๋ฆ„์ด NOW๋กœ ํ˜„์žฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ์ถœ๋ ฅ (2) SYSDATE - 1 AS YESTERDAY : ์นผ๋Ÿผ ์ด๋ฆ„์ด YESTERDAY๋กœ ํ˜„์žฌ ๋‚ ์งœ - 1(์–ด์ œ ๋‚ ์งœ)๊ณผ ์‹œ๊ฐ„์„ ์ถœ๋ ฅ (3) SYSDATE + 1 AS TOMORROW : ์นผ๋Ÿผ ์ด๋ฆ„์ด TOMORROW๋กœ ํ˜„์žฌ ๋‚ ์งœ + 1(๋‚ด์ผ ๋‚ ์งœ)๊ณผ ์‹œ๊ฐ„์„ ์ถœ๋ ฅ 3. ๋ช‡ ๊ฐœ์›” ์ดํ›„ ๋‚ ์งœ๋ฅผ ๊ตฌ..

[SQL] ์˜ค๋ผํด ๋‚ด์žฅ ํ•จ์ˆ˜ - ์ˆซ์ž ํ•จ์ˆ˜ ( ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ )

1. ์ˆซ์ž ํ•จ์ˆ˜๋ž€ - ์ˆซ์ž ๋ฐ์ดํ„ฐ๋ฅผ ์—ฐ์‚ฐํ•˜๊ณ  ์ˆ˜์น˜๋ฅผ ์กฐ์ •ํ•˜๋Š” ํ•จ์ˆ˜ 2. ํŠน์ • ์œ„์น˜์—์„œ ๋ฐ˜์˜ฌ๋ฆผํ•˜๋Š” ROUND ํ•จ์ˆ˜ - ROUND(์ˆซ์ž, ๋ฐ˜์˜ฌ๋ฆผ ์œ„์น˜) : ํŠน์ • ์ˆซ์ž๋ฅผ ๋ฐ˜์˜ฌ๋ฆผํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ - ๋ฐ˜์˜ฌ๋ฆผ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์†Œ์ˆ˜์  ์ฒซ ๋ฒˆ์งธ ์ž๋ฆฌ์—์„œ ๋ฐ˜์˜ฌ๋ฆผํ•œ ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜ ROUND([์ˆซ์ž], [๋ฐ˜์˜ฌ๋ฆผ ์œ„์น˜(์„ ํƒ, Default 0)]) -- 1. 2. 3. 4. 5. 6. SELECTROUND(1234.5678), ROUND(1234.5678, 0), ROUND(1234.5678, 1), ROUND(1234.5678, 2), ROUND(1234.5678, -1), ROUND(1234.5678, -2) FROMDUAL (1) ROUND(1234.5678) : 1235 ์†Œ์ˆ˜์  ์ฒซ์งธ์ž๋ฆฌ ๋ฐ˜์˜ฌ๋ฆผ (2) ROUND(12..

[SQL] ์˜ค๋ผํด ๋‚ด์žฅ ํ•จ์ˆ˜ - ๋ฌธ์ž ํ•จ์ˆ˜ ( ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ )

1. ๋ฌธ์ž ํ•จ์ˆ˜๋ž€ - ๋ฌธ์ž ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•˜๊ฑฐ๋‚˜ ๋ฌธ์ž ๋ฐ์ดํ„ฐ๋กœ๋ถ€ํ„ฐ ํŠน์ • ๊ฒฐ๊ณผ๋ฅผ ์–ป๊ณ ์ž ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜ 2. ๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋Š” ํ•จ์ˆ˜ - UPPER(๋ฌธ์ž์—ด) : ๊ด„ํ˜ธ ์•ˆ ๋ฌธ์ž์—ด์„ ๋ชจ๋‘ ๋Œ€๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ฐ˜ํ™˜ - LOWER(๋ฌธ์ž์—ด) : ๊ด„ํ˜ธ ์•ˆ ๋ฌธ์ž์—ด์„ ๋ชจ๋‘ ์†Œ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ฐ˜ํ™˜ - INITCAP(๋ฌธ์ž์—ด) : ๊ด„ํ˜ธ ์•ˆ ๋ฌธ์ž์—ด์„ ์ฒซ ๊ธ€์ž๋Š” ๋Œ€๋ฌธ์ž, ๋‚˜๋จธ์ง€ ๋ฌธ์ž๋Š” ์†Œ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ฐ˜ํ™˜ UPPER([๋ฌธ์ž์—ด]) LOWER([๋ฌธ์ž์—ด]) INITCAP([๋ฌธ์ž์—ด]) -- 1. SELECT ENAME, UPPER(ENAME), LOWER(ENAME), INITCAP(ENAME) FROM EMP; -- 2. ENAME ์ด scott ์ธ ์‚ฌ์› ์กฐํšŒํ•˜๊ธฐ SELECT * FROM EMP WHERE UPPER(ENAME) ..

[SQL] ์˜ค๋ผํด ํ•จ์ˆ˜

1. ์˜ค๋ผํด ํ•จ์ˆ˜๋ž€? - ํŠน์ •ํ•œ ๊ฒฐ๊ณผ ๊ฐ’์„ ์–ป๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ˆ˜ ๋ช…๋ น์–ด - ๋‚ด์žฅ ํ•จ์ˆ˜ built-in function : ์˜ค๋ผํด์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋Š” ๋‚ด์žฅ ํ•จ์ˆ˜์™€ - ์‚ฌ์šฉ์ž ์ •์˜ ํ•จ์ˆ˜ user-defined function : ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”์— ์˜ํ•ด ์ง์ ‘ ์ •์˜ํ•œ ํ•จ์ˆ˜ 2. ๋‚ด์žฅ ํ•จ์ˆ˜์˜ ์ข…๋ฅ˜ - ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ single-row function : ๋ฐ์ดํ„ฐ๊ฐ€ ํ•œ ํ–‰์”ฉ ์ž…๋ ฅ๋˜๊ณ  ์ž…๋ ฅ๋œ ํ•œ ํ–‰๋‹น ๊ฒฐ๊ณผ๊ฐ€ ํ•˜๋‚˜์”ฉ ๋‚˜์˜ค๋Š” ํ•จ์ˆ˜ - ๋‹ค์ค‘ํ–‰ ํ•จ์ˆ˜ multiple-row function : ์—ฌ๋Ÿฌ ํ–‰์ด ์ž…๋ ฅ๋˜์–ด ํ•˜๋‚˜์˜ ํ–‰์œผ๋กœ ๊ฒฐ๊ณผ๊ฐ€ ๋ฐ˜ํ™˜๋˜๋Š” ํ•จ์ˆ˜ 3. ๋‹จ์ผํ–‰ ํ•จ์ˆ˜ (1) ๋ฌธ์ž ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•˜๋Š” ๋ฌธ์ž ํ•จ์ˆ˜ [SQL] ์˜ค๋ผํด ๋‚ด์žฅ ํ•จ์ˆ˜ - ๋ฌธ์ž ํ•จ์ˆ˜ 1. ๋ฌธ์ž ํ•จ์ˆ˜๋ž€ - ๋ฌธ์ž ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•˜๊ฑฐ๋‚˜ ๋ฌธ์ž ๋ฐ..

[SQL] WHERE ์ ˆ

1. WHERE ์ ˆ - ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ ํŠน์ • ์กฐ๊ฑด์„ ๊ธฐ์ค€์œผ๋กœ ์›ํ•˜๋Š” ํ–‰์„ ์ถœ๋ ฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ SELECT [์กฐํšŒํ•  ์นผ๋Ÿผ 1 ์ด๋ฆ„], [์นผ๋Ÿผ 2 ์ด๋ฆ„], … , [์นผ๋Ÿผ N ์ด๋ฆ„] FROM [์กฐํšŒํ•  ํ…Œ์ด๋ธ” ์ด๋ฆ„] WHERE[์กฐํšŒํ•  ์นผ๋Ÿผ์„ ์„ ๋ณ„ํ•˜๊ธฐ ์œ„ํ•œ ์กฐ๊ฑด์‹]; -- ์กฐ๊ฑด์‹์˜ ๊ฒฐ๊ณผ๊ฐ€ ์ฐธ์ธ ์นผ๋Ÿผ๋งŒ ์ถœ๋ ฅ SELECT * FROM EMP WHERE DEPTNO = 30; - WHERE์ ˆ์ด ํฌํ•จ๋œ SELECT๋ฌธ์„ ์‹คํ–‰ํ•˜๋ฉด ์กฐํšŒํ•  ํ…Œ์ด๋ธ”์˜ ๊ฐ ์นผ๋Ÿผ์— WHERE์ ˆ์˜ ์กฐ๊ฑด์‹์„ ๋Œ€์ž…ํ•˜์—ฌ ๊ฒฐ๊ณผ๊ฐ€ ์ฐธ์ธ ์นผ๋Ÿผ๋งŒ ์ถœ๋ ฅ 2. ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž AND , OR - WHERE์ ˆ์—์„œ ์กฐ๊ฑด์‹์„ ์—ฌ๋Ÿฌ ๊ฐœ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž AND, OR -- 1. AND SELECT * FROM EMP WHERE DEPTNO = 30 AND ..

[SQL] ORDER BY ์ ˆ

1. ORDER BY ์ ˆ - ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ๋•Œ ์‹œ๊ฐ„์ด๋‚˜ ์ด๋ฆ„ ์ˆœ์„œ ๋˜๋Š” ์–ด๋–ค ๊ธฐ์ค€์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•ด์„œ ์ถœ๋ ฅํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ORDER BY์ ˆ ์‚ฌ์šฉ - SELECT๋ฌธ์„ ์ž‘์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ์ ˆ ์ค‘ ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ๋ถ€๋ถ„์— ์ž‘์„ฑ - ์ˆซ์ž ๋ฟ ์•„๋‹ˆ๋ผ ๋ฌธ์ž ๋ฐ์ดํ„ฐ ๋˜ํ•œ ์•ŒํŒŒ๋ฒณ ์ˆœ์œผ๋กœ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋‚ ์งœ ๋ฐ์ดํ„ฐ๋„ ์ •๋ ฌ์ด ๊ฐ€๋Šฅ - ์ •๋ ฌ ์˜ต์…˜์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์„ค์ •. default ASC - ์˜ค๋ฆ„์ฐจ์ˆœ ASC / ๋‚ด๋ฆผ์ฐจ์ˆœ DESC SELECT [์กฐํšŒํ•  ์นผ๋Ÿผ 1 ์ด๋ฆ„], [์นผ๋Ÿผ 2 ์ด๋ฆ„], … , [์นผ๋Ÿผ N ์ด๋ฆ„] FROM [์กฐํšŒํ•  ํ…Œ์ด๋ธ” ์ด๋ฆ„] … ( ๊ทธ ๋ฐ–์˜ ์ ˆ ) … ORDER BY [์ •๋ ฌํ•˜๋ ค๋Š” ์นผ๋Ÿผ ์ด๋ฆ„] [์ •๋ ฌ ์˜ต์…˜]; -- 1. ์˜ค๋ฆ„์ฐจ์ˆœ ์‚ฌ์šฉ SELECT * FROM EMP ..

[SQL] SELECT ๋ฌธ

0. ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ์„ธ๊ฐ€์ง€ ๋ฐฉ๋ฒ• - ์…€๋ ‰์…˜ selection : ํ–‰ ๋‹จ์œ„๋กœ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ๋ฐฉ์‹. ํ…Œ์ด๋ธ” ์ „์ฒด ๋ฐ์ดํ„ฐ ์ค‘ ๋ช‡๋ช‡ ๊ฐ€๋กœ์ค„์˜ ๋ฐ์ดํ„ฐ๋งŒ ์„ ํƒํ•  ๋•Œ ์‚ฌ์šฉ - ํ”„๋กœ์ ์…˜ projection : ์นผ๋Ÿผ(์—ด) ๋‹จ์œ„๋กœ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ๋ฐฉ์‹. ํ…Œ์ด๋ธ” ์ „์ฒด ํ•ญ๋ชฉ ์ค‘ ๋ช‡๋ช‡ ์†์„ฑ์˜ ๋ฐ์ดํ„ฐ๋งŒ ์„ ํƒํ•  ๋•Œ ์‚ฌ์šฉ - ์กฐ์ธ join : ๋‘ ๊ฐœ ์ด์ƒ์˜ ํ…Œ์ด๋ธ”์„ ์–‘ ์˜†์— ์—ฐ๊ฒฐํ•˜์—ฌ ๋งˆ์น˜ ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”์ธ ๊ฒƒ ์ฒ˜๋Ÿผ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ๋ฐฉ์‹ 1. SELECT ๋ฌธ - SELECT๋ฌธ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ณด๊ด€๋˜์–ด ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ - SELECT์ ˆ๊ณผ FROM์ ˆ์„ ๊ธฐ๋ณธ ๊ตฌ์„ฑ์œผ๋กœ SELECT๋ฌธ์„ ์ž‘์„ฑ - FROM ์ ˆ์€ ์—ฌ๋Ÿฌ ๊ฐœ ํ…Œ์ด๋ธ” ์ง€์ •์ด ๊ฐ€๋Šฅ, ์ •ํ™•ํžˆ ๋งํ•˜๋ฉด ์—ด๊ณผ ํ–‰์œผ๋กœ ๊ตฌ์„ฑ๋œ ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ์ด๋ฉด ๋ชจ๋‘ ์ง€์ • ๊ฐ€๋Šฅ..