1. ์ด๋ฆ„์ด ALLEN์ธ ์‚ฌ์›๊ณผ ๊ฐ™์€ ์—…๋ฌด๋ฅผ ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ์‚ฌ์›๋ฒˆํ˜ธ, ์ด๋ฆ„, ์—…๋ฌด, ๊ธ‰์—ฌ ์ถ”์ถœ

SELECT empno, ename, job, sal
FROM emp
WHERE job = (SELECT job FROM emp WHERE ename='ALLEN');


2. EMP ํ…Œ์ด๋ธ”์˜ ์‚ฌ์›๋ฒˆํ˜ธ๊ฐ€ 7521์ธ ์‚ฌ์›๊ณผ ์—…๋ฌด๊ฐ€ ๊ฐ™๊ณ , ๊ธ‰์—ฌ๊ฐ€ 7934๋ฒˆ ์‚ฌ์›๋ณด๋‹ค ๋งŽ์€ ์‚ฌ์›์˜ ์‚ฌ์›๋ฒˆํ˜ธ, ์ด๋ฆ„, ๋‹ด๋‹น์—…๋ฌด, ์ž…์‚ฌ์ผ, ๊ธ‰์—ฌ ์ถ”์ถœ

SELECT ename, job, hiredate, sal
FROM emp
WHERE job = (SELECT job FROM emp WHERE empno=7521) AND
sal > (SELECT sal FROM emp WHERE empno=7934);

 

3. EMP ํ…Œ์ด๋ธ”์—์„œ ๊ธ‰์—ฌ์˜ ํ‰๊ท ๋ณด๋‹ค ์ ์€ ์‚ฌ์›์˜ ์‚ฌ์›๋ฒˆํ˜ธ, ์ด๋ฆ„, ์—…๋ฌด, ๊ธ‰์—ฌ, ๋ถ€์„œ๋ฒˆํ˜ธ ์ถ”์ถœ

SELECT empno, ename, job, sal, deptno
FROM emp
WHERE sal < (SELECT avg(sal) From emp);


4. 20๋ฒˆ ๋ถ€์„œ์˜ ์ตœ์†Œ๊ธ‰์—ฌ๋ณด๋‹ค ๋ถ€์„œ๋ณ„ ์ตœ์†Œ๊ธ‰์—ฌ๊ฐ€ ์ž‘์€ ๋ถ€์„œ์˜ ๋ถ€์„œ๋ฒˆํ˜ธ, ์ตœ์†Œ ๊ธ‰์—ฌ ์ถ”์ถœ

SELECT MIN(sal)
FROM emp
GROUP BY deptno
HAVING MIN(sal) < (SELECT MIN(sal) FROM emp WHERE deptno=20);


5. ์—…๋ฌด๋ณ„ ๊ธ‰์—ฌ ํ‰๊ท  ์ค‘, ๊ฐ€์žฅ ์ž‘์€ ๊ธ‰์—ฌํ‰๊ท ์˜ ์—…๋ฌด์™€ ๊ธ‰์—ฌํ‰๊ท  ์ถ”์ถœ

SELECT MIN(sal), job
FROM emp
GROUP BY job
HAVING AVG(sal) = (SELECT MIN(AVG(sal)) FROM emp GROUP BY job);


6. ์—…๋ฌด๋ณ„ ์ตœ๋Œ€ ๊ธ‰์—ฌ๋ฅผ ๋ฐ›๋Š” ์‚ฌ์›์˜ ์‚ฌ์›๋ฒˆํ˜ธ, ์ด๋ฆ„, ์—…๋ฌด, ์ž…์‚ฌ์ผ, ๊ธ‰์—ฌ, ๋ถ€์„œ๋ฒˆํ˜ธ ์ถ”์ถœ

SELECT *FROM EMP;
SELECT empno, ename, job, hiredate, sal, deptno
FROM emp
WHERE sal IN (SELECT MAX(sal) FROM emp GROUP BY job);


7. 30๋ฒˆ ๋ถ€์„œ์˜ ์ตœ์†Œ๊ธ‰์—ฌ๋ฅผ ๋ฐ›๋Š” ์‚ฌ์›๋ณด๋‹ค ๋งŽ์€ ๊ธ‰์—ฌ๋ฅผ ๋ฐ›๋Š” ์‚ฌ์›์˜ ์‚ฌ์›๋ฒˆํ˜ธ, ์ด๋ฆ„, ์—…๋ฌด, ์ž…์‚ฌ์ผ, ๊ธ‰์—ฌ, ๋ถ€์„œ๋ฒˆํ˜ธ, ๋‹จ 30๋ฒˆ ๋ถ€์„œ๋Š” ์ œ์™ธํ•˜๊ณ  ์ถ”์ถœ

SELECT empno, ename, hiredate, deptno
FROM emp
WHERE sal > (SELECT MIN(sal)  FROM emp WHERE deptno=30)
AND deptno!=30;


8. ๊ธ‰์—ฌ์™€ ๋ณด๋„ˆ์Šค๊ฐ€ 30๋ฒˆ ๋ถ€์„œ์— ์žˆ๋Š” ์‚ฌ์›์˜ ๊ธ‰์—ฌ์™€ ๋ณด๋„ˆ์Šค๊ฐ€ ๊ฐ™์€ ์‚ฌ์›์„ 30๋ฒˆ ๋ถ€์„œ์˜ ์‚ฌ์›์€ ์ œ์™ธํ•˜๊ณ  ์ถ”์ถœ

SELECT *
FROM emp
WHERE (sal, NVL(comm,0)) IN (SELECT sal, NVL(comm,0) FROM emp WHERE deptno=30)
AND deptno != 30;


9. BLAKE์™€ ๊ฐ™์€ ๋ถ€์„œ์— ์žˆ๋Š” ๋ชจ๋“  ์‚ฌ์›์˜ ์ด๋ฆ„๊ณผ ์ž…์‚ฌ์ผ์ž๋ฅผ ์ถ”์ถœ

SELECT ename, hiredate
FROM emp
WHERE deptno = (SELECT deptno FROM emp WHERE ename='BLAKE');


10. ํ‰๊ท ๊ธ‰์—ฌ ์ด์ƒ์„ ๋ฐ›๋Š” ๋ชจ๋“  ์‚ฌ์›์— ๋Œ€ํ•ด ์‚ฌ์›์˜ ๋ฒˆํ˜ธ์™€ ์ด๋ฆ„์„ ๊ธ‰์—ฌ๊ฐ€ ๋งŽ์€ ์ˆœ์„œ๋กœ ์ถ”์ถœ

SELECT empno, ename
FROM emp
WHERE sal > (SELECT AVG(sal) FROM emp)
ORDER BY sal DESC;


11. ์ด๋ฆ„์— T๊ฐ€ ์žˆ๋Š” ์‚ฌ์›์ด ๊ทผ๋ฌดํ•˜๋Š” ๋ถ€์„œ์—์„œ ๊ทผ๋ฌดํ•˜๋Š” ๋ชจ๋“  ์‚ฌ์›์— ๋Œ€ํ•ด ์‚ฌ์›๋ฒˆํ˜ธ,์ด๋ฆ„,๊ธ‰์—ฌ๋ฅผ ์ถœ๋ ฅ, ์‚ฌ์›๋ฒˆํ˜ธ ์ˆœ์„œ๋กœ ์ถ”์ถœ

SELECT empno, ename, sal
FROM emp
WHERE deptno IN (SELECT deptno FROM emp WHERE ename LIKE '%T%')
ORDER BY empno;


*๋‹ค๋ฅธ ๋ฐฉ๋ฒ• (INSTR ํ•จ์ˆ˜)
INSTR(string, substring, position, occurrence)
INSTR('๋ฌธ์ž์—ด ๋˜๋Š” ์นผ๋Ÿผ๋ช…', '์ฐพ๊ณ  ์‹ถ์€ ๋ฌธ์ž์—ด', ์‹œ์ž‘ ์œ„์น˜, ์ฐพ์€ ๋ฌธ์ž์—ด์ด ์—ฌ๋Ÿฌ๊ฐœ์ผ ๊ฒฝ์šฐ ๋ช‡ ๋ฒˆ์งธ ๋‚˜ํƒ€๋‚˜๋Š” ๋ฌธ์ž์—ด์ธ์ง€
* ๋ฐœ๊ฒฌ ์ธ๋ฑ์Šค๋Š” ์ƒ๋žต ๊ฐ€๋Šฅ, ์ƒ๋žตํ•˜๋ฉด ๋ชจ๋‘ 1๋กœ ๊ฐ„์ฃผ

select deptno, empno, ename, sal from emp
where deptno in (select deptno from emp where instr(ename, 'T', 1, 1)!=0)
order by empno;


12. ๋ถ€์„œ์œ„์น˜๊ฐ€ CHICAGO์ธ ๋ชจ๋“  ์‚ฌ์›์— ๋Œ€ํ•ด ์ด๋ฆ„,์—…๋ฌด,๊ธ‰์—ฌ ์ถ”์ถœ

SELECT ename, job, sal
FROM emp
WHERE deptno = (SELECT deptno FROM dept WHERE loc = 'CHICAGO');


13. KING์—๊ฒŒ ๋ณด๊ณ ํ•˜๋Š” ๋ชจ๋“  ์‚ฌ์›์˜ ์ด๋ฆ„๊ณผ ๊ธ‰์—ฌ๋ฅผ ์ถ”์ถœ

SELECT ename, sal
FROM emp
WHERE mgr IN (SELECT empno FROM emp WHERE ename='KING');


14. FORD์™€ ์—…๋ฌด์™€ ์›”๊ธ‰์ด ๊ฐ™์€ ์‚ฌ์›์˜ ๋ชจ๋“  ์ •๋ณด ์ถ”์ถœ

SELECT *
FROM emp
WHERE (job, sal) = (SELECT job, sal FROM emp WHERE ename = 'FORD');


15. ์—…๋ฌด๊ฐ€ JONES์™€ ๊ฐ™๊ฑฐ๋‚˜ ์›”๊ธ‰์ด FORD ์ด์ƒ์ธ ์‚ฌ์›์˜ ์ด๋ฆ„,์—…๋ฌด,๋ถ€์„œ๋ฒˆํ˜ธ,๊ธ‰์—ฌ ์ถ”์ถœ

SELECT ename, job, deptno, sal
FROM emp 
WHERE job = (SELECT job FROM emp WHERE ename = 'JONES')
OR sal > (SELECT sal FROM emp WHERE ename = 'FROD');


16. SCOTT ๋˜๋Š” WARD์™€ ์›”๊ธ‰์ด ๊ฐ™์€ ์‚ฌ์›์˜ ์ด๋ฆ„,์—…๋ฌด,๊ธ‰์—ฌ๋ฅผ ์ถ”์ถœ

SELECT ename, job, sal
FROM emp 
WHERE sal = (SELECT sal FROM emp WHERE ename = 'SCOTT')
OR sal = (SELECT sal FROM emp WHERE ename = 'WARD');

 

'๊ฐœ์ธ๊ณต๋ถ€ > SQL' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

09. Oracle ์ค‘๊ฐ„์—ฐ์Šต๋ฌธ์ œ  (0) 2021.09.22
08. Oracle ์ค‘๊ฐ„์—ฐ์Šต๋ฌธ์ œ  (0) 2021.09.21
06. GROUP BY  (0) 2021.09.18
05. Function : ํ•จ์ˆ˜  (0) 2021.09.17
04. Sequence : ์‹œํ€€์Šค  (0) 2021.09.16

+ Recent posts