◆데이터 제한 및 정렬


1) where 


SELECT last_name, job_id, department_id

FROM employees

WHERE last_name = 'Whalen' ;


2) 비교 연산자


특정 표현식을 다른 값이나 표현식과 비교하는 조건에서 사용


 연산자

의미 

같음 

큼 

>= 

크거나 같다 

작다 

<= 

작거나 같다 

between ~ and  

사이(=범위) 

in(,,,,) 

리스트 범위 

like 

문자 패턴 검색 

is null 

null의 여부 



SELECT last_name, salary

FROM employees

WHERE salary <= 3000 ;


3)between a and b (a와 b사이의 값)

SELECT last_name, salary

FROM employees

WHERE salary between 3000 and 5000;


4)in (리스트 범위 제한)


select employee_id,

        last_name,

        salary,

        manager_id

from employees

where employee_id in (100,101,102);

 SELECT LAST_NAME, JOB_ID

FROM EMPLOYEES

WHERE JOB_ID

NOT IN('IT_PROG','ST_CLERK','SA_REP');



5)like 


(a) r로 끝나는 문자

 select first_name

        , last_name

from employees

where first_name like '%r';  -- 'r%'로 하게 되면 r로 시작하는 문자


(b)2번째 단어가 'o'인 문자

select last_name

from employees

where last_name like '_o%';


(c)문자열 안에서 _(언더바) 찾기 

select last_name

from emptest

where last_name like '\_' ESCAPE '\'; -- escape 지정하기 \ 뒤에 붙은 _ 언더바는 문자 그대로의 언더바로 받음.


6)And , Or


And : 구성 요소 조건이 모두 참인 경우

Or : 구성 요소 중 하나라도 참인 경우

not : 참이라면 거짓으로 바꾸고 거짓이라면 참으로 바꾸기


 

SELECT LAST_NAME, JOB_ID

FROM EMPLOYEES

WHERE JOB_ID

NOT IN('IT_PROG','ST_CLERK','SA_REP');


7) 우선 순위 규칙


 연산자

의미 

산술 연산자

연결 연산자 

비교 조건 

is null, like, in 

5. 

between 

같지 않음 

not 

and 

or 



8)order by a   ( a기준으로 데이터 정렬하기)


desc : 내림차순

asc   : 오름 차순(디폴트임 즉, desc나 asc라고 쓰지 않으면 자동으로 asc로 선택됨.)

SELECT last_name, job_id,department_id, hire_date

FROM employees

ORDER BY hire_date DESC; -- hire_date 를 기준으로 내림차순 정렬



9)치환 변수(&=앰퍼샌드)


변수 앞에 앰퍼샌드를 붙이면 유저가 값을 입력하도록 함.


SELECT employee_id, last_name, salary, department_id

FROM employees

WHERE employee_id = &employee_num ;


10)define (미리 정의해둔 값)


&에 넣을 값을 미리 설정해놓는 것.


DEFINE employee_num = 200

SELECT employee_id, last_name, salary, department_id

FROM employees

WHERE employee_id = &employee_num ;

UNDEFINE employee_num --undefine 꼭 해줘야 함.


+ Recent posts