์ค๋ผํด(Oracle)์์ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ๋, ์ค๋ณต ์ ๊ฑฐํ๋ ๋ฐฉ๋ฒ์ผ๋ก๋
1. distinct ๋ฅผ ๊ฑฐ๋ ๋ฐฉ๋ฒ ๊ณผ 2. group by ์ ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์๋ค.
Group by
- Group by ๋ ๋ฐ์ดํฐ๋ค์ ์ํ๋ ๊ทธ๋ฃน์ผ๋ก ๋๋ ์ ์์.
- ๋๋๊ณ ์ ํ๋ ๊ทธ๋ฃน์ ์ปฌ๋ผ๋ช ์ SELECT์ ๊ณผ GROUP BY์ ๋ค์ ์ถ๊ฐํ๋ฉด ๋จ.
- ์ง๊ณํจ์์ ํจ๊ป ์ฌ์ฉํ๋ ์์๋ GROUP BY์ ์ ์ถ๊ฐํ์ง ์์๋ ๋จ.
SELECT deptno ๋ถ์๋ฒํธ, COUNT(*) ์ฌ์์
FROM emp
GROUP BY deptno
ORDER BY COUNT(*) DESC;
Distinct
- ์ค๋ณต๋ ํ์ ์ ๊ฑฐํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ๊ธฐ ์ํ ์ฉ๋๋ก ์ฌ์ฉ.
SELECT distinct deptno ๋ถ์๋ฒํธ, COUNT(*) ์ฌ์์
FROM emp
ORDER BY COUNT(*) DESC;
์ด๋ ๊ฒ ๋์ดํด๋๊ณ ๋ณด๋ ๋๊ฐ ๋ค ์ค๋ณต ์ ๊ฑฐ๋ฅผ ์ํ ๊ฒ ๊ฐ์๋ฐ...
๋ฌด์จ ์ฐจ์ด๊ฐ ์์๊น ?
Group by ์ Distinct ์ ์ฐจ์ด
- Distinct ๋ ์ฃผ๋ก Unique(์ค๋ณต ์ ๊ฑฐ)ํ ์ปฌ๋ผ์ด๋ ๋ ์ฝ๋๋ฅผ ์กฐํํ๋ ๊ฒฝ์ฐ์ ์ฌ์ฉ.
- Group by๋ ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋ฃนํํด์ ๊ทธ ๊ฒฐ๊ณผ ๊ฐ์ ๊ฐ์ ธ์ค๋ ๊ฒฝ์ฐ ์ฌ์ฉ.
๋ ๊ฐ์ง ์์ ์ ์กฐ๊ธ๋ง ์๊ฐํด๋ณด๋ฉด ๋์ผํ ํํ์ ์์ ์ด๋ผ๋ ๊ฒ์ ๊นจ๋ซ๊ฒ ๋๋๋ฐ..
์ค์ ๋ก ์ผ๋ถ ์์ ์ ๊ฒฝ์ฐ Distinct ๋ก๋, Group by ๋ก๋, ์ฒ๋ฆฌ๊ฐ ๋ ์ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
๊ธฐ๋ฅ๋ฉด
์ง๊ณํจ์๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ๊ทธ๋ฃน์ผ๋ก ๊ตฌ๋ถํ ๋์๋ Group by ์ฌ์ฉ
ํน์ ๊ทธ๋ฃน ๊ตฌ๋ถ ์์ด ์ค๋ณต ๋ฐ์ดํฐ ์ ๊ฑฐ ์์๋ DISTINCT ์ฌ์ฉ
์ฑ๋ฅ๋ฉด
distinct ํค์๋๋ฅผ ์ฌ์ฉํ๋ฉด ์ฟผ๋ฆฌ๋ฌธ์ ๋ณต์กํ์ง ์์ผ๋, temp tablespace์ ์์๋ก ์ ์ฅํ๊ณ ์์ ํ๋ ๋ฐฉ์์ด๋ผ ์์คํ ์ ๋ถํ๋ฅผ ์ค ์ ์์.
group by์ ์ ์ด์ฉํ๋ฉด ์ฟผ๋ฆฌ๋ฌธ์ ๋ณต์กํด์ง๋, distinct์ ๋น๊ตํ๋ฉด ์ฑ๋ฅ์ด ์ข์.
๋ฐ์ดํฐ๊ฐ ์ ๊ณ ๊ฐ๋จํ ์ฟผ๋ฆฌ๋ฌธ์ Distinct๋ฅผ ์ฌ์ฉ.
๋ฐ์ดํฐ๊ฐ ๋ง๊ณ ์์คํ ์ ๋ถํ๋ฅผ ์ค ์ ์๋ ์ฟผ๋ฆฌ๋ฌธ์ group by์ ์ฌ์ฉ.
์ผ๋ฐ์ ์ธ ๋ฐ์ดํฐ ์กฐํ์ ๊ฒฝ์ฐ๋ ์ด๋ค ๋ฐฉ๋ฒ์ ์ ํํ๋ ์กฐํ ์ฑ๋ฅ์ ๋น์ทํจ...