오라클 WHERE 절 : 데이터 제한 및 정렬

2019. 6. 4. 00:08DB/오라클

728x90

WHERE 절을 사용하여 어떤 조건을 갖춘 칼럼(행)을 가져올 것인지 제한한다.

 

 

예)

select last_name, id_number

from students

where age >= 15;

student 라는 table에서, age 컬럼의 값이 15 이상인 데이터가 있다면, 그것들에 대응하는, last_name과 id_number 컬럼을 가져오도록 하자.

 

 

select last_name, height, weight

from health_checkup

where last_name like 'A%' and height >= 150;

 ☞ health_checkup 이라는 table에서, 이름 컬럼값이 A로 시작하고 키 컬럼값이 150 이상인 데이터가 있다면, 그것들에 대응하는 last_name과 height, weight 컬럼을 가져오도록 하자.

 

 

 

WHERE 절 비교조건 (기본적인 비교 연산자 =, >, < 같은 것들은 생략합니다)

 

연산자 의미

BETWEEN AND

NOT BETWEEN AND

select last_name, salary

from employees

where salary between 2500 and 3500;

employees 라는 table에서 급여가 2500, 3500 사이인 자들의 last_name과 salary를 보여다오.

 

IN (  )   NOT IN

select employee_id, last_name, manager_id

from employees

where manager_id in (100, 101, 201);

employees라는 table에서 manager_id가 100 또는 101 또는 201 인 자들의 employee_id, last_name, manager_id를 보여다오.

LIKE

유효한 문자열을 검색하는 연산자.

 

select first_name

from employees

where first_name like 'S%';

employees 라는 table에서 first_name이 S로 시작하는 자들의 first_name을 보여다오.

 

글자 뒤에 % (퍼센트)를 쓰면 그 글자 뒤에 다른 문자가 여러개 있을수도 있고 아예 없을수도 있다는 뜻임.

_ (언더바) 는 문자 한개를 뜻함.

 

예를 들어 Alice 라는 이름은 name like _ _ _ c _ 라든지 name like _ l % 라는 식의 조건으로 찾을 수 있다.

IS NULL  IS NOT NULL  

 

 

WHERE절 우선순위 규칙

 

계산순서 연산자
1 산술연산자
2 연결연산자 ||
3 비교 조건
4 IS NULL, IS NOT NULL, LIKE, IN, NOT IN
5 BETWEEN, NOT BETWEEN
6 NOT 논리조건
7 AND 논리조건
8 OR 논리조건
괄호를 사용하여 우선순위 규칙을 무시하고 우선순위를 변경할 수 있다.

 

728x90
반응형