ORACLE2009. 11. 21. 13:11
 

-데이터 베이스에서 데이터 검색 중에 표시되는 데이터 행을 제한 하거나 행 표시 순서를 지정.

 

1. 데이터 제한

-WHERE 절을 사용하여 질의에서 반환되는 행을 제한함.

-WHERE 절은 만족해야 할 조건을 포함함.

-WHERE 절은 FROM 절 다음에 위치함.

-조건이 참일 경우 조건을 만족하는 행이 반환됨.

 

2. 데이터 정렬

-ORDER BY 절을 사용하여 행을 정렬함.

-ORDER BY 절은 SELECT 문의 가장 마지막에 위치함.

-정렬 조건으로 표현식, 별칭, 열 위치를 지정할 수 있음.

-ORDER BY 절을 사용하지 않을 경우 동일한 질의를 두 번 이상 수행하더라도 동일한 순서로 질의되지 않음.

 

3. WHERE 절에 사용되는 단일 비교 연산자.

     =     :  a = b(a는 b와 같다)

     >     :  a > b(a는 b 보다 크다)

    >=     :  a >= b(a는 b 보다 크거나 같다)

     <     :  a < b(a는 b보다 작다)

    <=     :  a <= b(a는 b 보다 작거나 같다)

    <>    :   a <> b(a와 b 는 같지 않다)

 

4. BETWEEN 연산자

-값의 범위에 따라 행을 표시할 수 있음.

-지정 범위에는 하한 값과 상한값이 포함되고, 하한값을 먼저 지정해야 함.

ex) SQL> SELECT pname, duty, dsal

               FROM prof

               WHERE dsal BETWEEN 200 AND 250;

5. IN 연산자

-값이 특정 집합에 있는 값의 행을 표시할 수 있음.

-모든 데이터 유형에 사용할 수 있음.

ex) SQL> SELECT pname, duty, dsal

               FROM prof

                WHERE dsal IN (150, 180, 200, 230, 250);

 

6. LIKE 연산자

-검색할 값을 정확하게 알지 못하는 경우 패턴(pattern)이 일치하는 행을 표시할 수 있음.

-ESCAPE 옵션을 사용하여 검색할 문자에 '%' 또는 '_' 문자가 포함된 경우에도 검색할 수 있음.

-%  : 0개 이상의 일련의 문자를 나타냄.

-_   : 문자 하나를 나타냄.

ex) SQL> SELECT *

               FROM course

               WHERE cname LIKE '_D%';

 

5. NULL 연산자

- NULL 연산자에는 IS NULL 연산자와 IS NOT NULL 연산자가 있음.

-널(NULL) 여부를 검사

-어떤 값과도 동일성 여부를 판별할 수 없으므로 동등 연산자(=)를 사용하여 조회할 수는 없음.

ex) SQL> SELECT pname, duty, deptno, mgr

               FROM prof

               WHERE mgr IS NULL;

6. 논리 연산자

-AND 연산자 : 구성 요소 조건이 모두 TRUE이면 TRUE 를 반환.

-OR 연산자 : 구성 요소 조건 중 하나라도 TRUE이면 TRUE 를 반환.

-NOT 연산자 : 조건이 TRUE이면 FALS를 반환하고, FALSE이면 TRUE를 반환

*IN 연산자 외에 BETWEEN, LIKE, NULL 연산자 등 다른 SQL 연산자와 함께 사용할 수 있음.

 

7. 연산자 우선 순위

-산술연산자

-연결연산자

-비교 조건

-IS [NOT] NULL, LIKE, [NOT] IN

-[NOT] BETWEEN

-NOT 논리 조건

-AND 논리 조건

-OR 논리 조건

*괄호()를 사용하여 우선순위 규칙을 무시하고 우선 순위를 변경할 수 있음.


'ORACLE' 카테고리의 다른 글

SQL, SQL*PLUS, iSQL*PLUS의 차이  (0) 2009.11.21
ORDER BY  (0) 2009.11.21
열 별칭, 연결연산자, 리터럴(Literal), 중복행  (0) 2009.11.21
산술식, 연산자, 널(Null)  (0) 2009.11.21
SELECT  (0) 2009.11.21
Posted by Tiwaz