개인참고자료/오라클(데이터베이스)

복수 행 서브쿼리의 정의와 In, Any, All 연산자의 사용

경진 2008. 8. 27. 14:01
IN

IN연산자는 리스트에 있는 각각의 값들과 비교하여 값이 같으면 해당하는 결과를 출력시킨다

SELECT s_name, tuition, dept_id
  FROM student
 WHERE tuition IN(8900, 9300, 7600, 4500, 16500);

Any

"< Any"는 ANY 연산자 리스트에 있는 값들 가운데 가장 큰 값보다 작기만 하면 조건을 만족한다

SELECT s_name, tuition, dept_id
  FROM student
 WHERE tuition < ANY(8900, 9300, 7600, 4500, 16500);

"> Any"는 ANY 연산자 리스트에 있는 값들 가운데 가장 작은 값보다 크기만 하면 조건을 만족한다

SELECT s_name, tuition, dept_id
  FROM student
 WHERE tuition > ANY(8900, 9300, 7600, 4500, 16500);

"= Any"는 IN 연산자와 같은 기능을 한다

SELECT s_name, tution, dept_id
  FROM student
 WHERE tuition = ANY(8900, 9300, 7600, 4500, 16500);

All

"< All"는 Any 연산자 리스트에 있는 값들 가운데 가장 작은 값보다 작기만 하면 조건을 만족한다

SELECT s_name, tution, dept_id
  FROM student
 WHERE tution < ALL(8900, 9300, 7600, 4500, 16500);

"> All"는 Any 연산자 리스트에 있는 값들 가운데 가장 큰 값보다 크기만 하면 조건을 만족한다

SELECT s_name, tution, dept_id
  FROM student
 WHERE tution > ALL(8900, 9300, 7600, 4500, 16500);