아래를 보시면 emp 테이블에서 JONS 이란 이름을 가진 사원과 업무가 같거나,
FORD란 이름을 가진 사원보다 급여가 같거나 많이 받는 사원들의 이름,업무,
부서번호,급여를 출력 하라는 쿼리 인데요..제가 궁금한 것은 데이타 값은 대.소
문자를 구분하므로, lower(JONS)라고 하면 소문자로 변화되어 찾게 될텐데
아시다시피 emp테이블의 모든 값은 대문자로 되어있지 않습니까? 그런데 왜 아
래와 같이 검색되어 지는 걸까요...??
SELECT ename,job,deptno,sal
FROM emp
WHERE job = (select job from emp where ename = 'lower(JONS)')
OR sal > = ( select sal from emp where ename='FORD') order by sal desc
/
* 결과 값
ENAME JOB DEPTNO SAL
---------- --------- ---------- ----------
KING PRESIDENT 10 5000
FORD ANALYST 20 3000
SCOTT ANALYST 20 3000
그리고 더불어 반환받을 값이 하나가 아닌 위와 같이 여러개일 때는 ' = ' 으로 할 수 없고,
IN 으로 해야 한다고 하던데 왜 또 멀쩡히 값이 나오는 걸까요..?? 제가 잘 이해를 못해서;;
친절한 설명 부탁드립니다 ~.