๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ“ฆ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค (DB) ๐Ÿ“ฆ34

๋ถ„์„ํ•จ์ˆ˜, ์ˆœ์œ„ํ•จ์ˆ˜ (RANK, DENSE_RANK, ROW_NUMBER, ROWNUM) 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667-- ๋ถ„์„ ํ•จ์ˆ˜/*์ˆœ์œ„ํ•จ์ˆ˜RANK 1 2 3 3 5 6 DENSE_RANK() 1 2 3 3 4 5ROW_NUMBER() 1 2 3 4 5 6 ROWNUMํ•„์š”ํ•œ ์ด์œ : ์ˆœ์„œ๋ฅผ ๋ฒˆํ˜ธ๋กœ ์„ค์ •ํ•˜๊ธฐ์œ„ํ•ด*/ SELECT employee_id, first_nameFROM employeesWHERE employee_id >= 100 AND employee_id 2021. 2. 15.
OVER, PARTITION BY 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 --OVER() ํ•จ์ˆ˜ --select์ ˆ์—์„œ๋งŒ ์‚ฌ์šฉ --GROUP BY ๋ฅผ ๋ณด๊ฐ•ํ•˜๊ธฐ ์œ„ํ•ด ๋‚˜์˜จ ํ•จ์Šˆ --select ์ ˆ์—์„œ GROUP์„ ๋งŒ๋“ค์ง€ ์•Š๊ณ  ์‚ฌ์šฉ๊ฐ€๋Šฅ SELECT count(*), department_id --์—๋Ÿฌ FROM employees; SELECT count(*), department_id --์—๋Ÿฌ FROM employees GROUP BY department_id; SELECT department_id, COUNT(*)OVER() --์—๋Ÿฌ FROM employees; SELECT first_name, department_id, COUNT.. 2021. 2. 15.
์ง‘ํ•ฉ (UNION, INTERSECT, MINUS) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 /* ์ง‘ํ•ฉ ํ•ฉ์ง‘ํ•ฉ: UNION - FULLOUTER ๊ต์ง‘ํ•ฉ: INTERSECT - INNER ์ฐจ์ง‘ํ•ฉ: MINUS */ --UNION SELECT job_id FROM employees WHERE job_id IN('AD_VP', 'FI_ACCOUNT') UNION ALL SELECT job_id FROM jobs WHERE job_id IN('AD_VP', 'FI_ACCOUNT'); --INTERSECT --๋งค๋‹ˆ์ €์— ๋Œ€ํ•œ ์ •๋ณด๋งŒ ์ถ”๋ฆฐ๋‹ค(๊ต์ง‘ํ•ฉ์œผ๋กœ) --sorting ์ด ์ž๋™์ ์œผ๋กœ ๋œ๋‹ค -- ์ค‘.. 2021. 2. 15.
์„œ๋ธŒ ์ฟผ๋ฆฌ SUB QUERY ์„œ๋ธŒ ์ฟผ๋ฆฌ(Sub Query) ์ถ”๊ฐ€์ •๋ณด๋ฅผ ์ œ๊ณตํ•  ๋ชฉ์ ์œผ๋กœ ํ•˜๋‚˜์˜ SQL ๋ฌธ์žฅ ๋‚ด๋ถ€์— ์กด์žฌํ•˜๋Š” SELECT ๋ฌธ์žฅ์„ ๋งํ•œ๋‹ค. DML์— ์†ํ•˜๋Š” ๋ชจ๋“  ๋ฌธ์žฅ์— ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์„œ๋ธŒ์ฟผ๋ฆฌ๋Š” SELECT ๋ฌธ์žฅ์—์„œ ๋ฆฌ์ŠคํŠธ๋กœ ์˜ฌ ์ˆ˜ ์žˆ๋‹ค. ์—ฐ์‚ฐ์ž์˜ ์˜ค๋ฅธ์ชฝ์— ์™€์•ผํ•œ๋‹ค. Order by๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค. SELECT ์Šค์นผ๋ผ ์„œ๋ธŒ์ฟผ๋ฆฌ FROM ์ธ๋ผ์ธ ๋ทฐ WHERE ์ค‘์ฒฉ ์„œ๋ธŒ์ฟผ๋ฆฌ ์ค‘์ฒฉ ์„œ๋ธŒ์ฟผ๋ฆฌ( Nested Subquery ) - WHERE ๋ฌธ์— ๋‚˜ํƒ€๋‚˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ 1.๋‹จ์ผ ํ–‰ 2.๋ณต์ˆ˜(๋‹ค์ค‘) ํ–‰ 3.๋‹ค์ค‘ ์ปฌ๋Ÿผ ์ธ๋ผ์ธ ๋ทฐ(Inline View) - FROM ๋ฌธ์— ๋‚˜ํƒ€๋‚˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ ์Šค์นผ๋ผ ์„œ๋ธŒ์ฟผ๋ฆฌ( Scalar Subquery ) - SELECT ๋ฌธ์— ๋‚˜ํƒ€๋‚˜๋Š” ์„œ๋ธŒ์ฟผ๋ฆฌ ์‹คํ–‰ ์ˆœ์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ ์‹คํ–‰ -> ๋ฉ”์ธ(๋ถ€๋ชจ) ์ฟผ๋ฆฌ .. 2021. 2. 15.