본문 바로가기
컴소니/DB

[오라클 DBMS 공부] Where절에 사용하는 조건 정리

by 금소니 2020. 7. 30.
반응형

#97

DBMS 공부는 꾸준히 하고 있었지만 한 동안 포스팅이 없었는데요.

 

오랜만에 포스팅을 하고자 돌아왔습니다.

 

Where절의 경우 쿼리를 작성할 때 정말 많이 사용되는데요.

 

사용하다가도 자주 사용하지 않으면 까먹는 부분이 있어서 정리를 해두려고 합니다.

 

1. Where절이란?

테이블에 저장되어 있는 데이터 중에서 작성된 조건에 따라 특정한 데이터를 필터링할 때 사용합니다.

Where절의 경우 조건이 올 수 있는 구문 중 하나인데요.

쿼리에서 조건이란 테이블의 특정 컬럼의 값과 조건에 사용할 수 있는 연산자들을 이용하여 특정 데이터를 처리하는 것입니다.

 

2. Where절에서 사용하는 조건

1) 연산자

조건이라고 하였을 때 가장 기본적인 것은 연산자입니다.

비교 연산자(=,>,<,>=,<=), 수식연산자(+,-,*,/), 결합 연산자(||)가 있습니다.

*|| 경우 오라클DBMS에서 결합 연산자로 사용됩니다.

특히 만족하는 값을 출력할 때 비교 연산자가 가장 많이 사용됩니다.

 

EX) SALARY 컬럼의 값이 9000인 데이터 출력

EX) SALARY 컬럼의 값이 9000이상인 데이터 출력

2) AND, OR 조건

조건문을 작성할 때 AND와 OR을 빼놓고 이야기 할 수는 없습니다.

다른 곳에서 사용하는 기능과 동일한 기능으로 사용됩니다.

EX) AND, SALARY가 9000이상이고 10000이하인 데이터

EX) OR, SALARY가 9000이거나 10000인 데이터

3) 범위 조건

비교연산자 + BETWEEN... AND 구문을 통하여 사용되는 조건입니다.

어쩌다보니 위에 AND 구문에서 예를 한 번들었는데요.

BETWEEN을 사용하여 동일하게 데이터를 출력해보겠습니다.

EX) BETWEEN... AND, SALARY가 9000이상 10000이하인 데이터

위와 동일한 결과가 출력되었습니다.

 

4) NULL 데이터 조건

데이터를 조회하다 보면 NULL값이 들어가 있는 경우를 보실 수 있습니다.

이 경우 NULL값인 데이터만 출력할 수 있습니다.

이 때 사용되는 조건이 'IS NULL'입니다.

EX) IS NULL, COMMISION_PCT가 NULL인 데이터

EX) IS NULL, 반대로 NULL값이 아닌 데이터

5) IN 조건

데이터를 처리하고자 할 때 여러개의 데이터를 처리하고자 할 때가 있습니다.

하지만 그 때마다 비교조건을 작성하기에는 너무 많은데요.

그 때 동일한 컬럼에서 여러 개의 특정 값에 대한 데이터를 조회할 때 사용되는 조건입니다.

EX) IN, SALARY가 9000, 10000, 11000인 데이터

6) EXISTS 조건

IN과 비슷하게 해당 컬럼에 데이터가 있는지 없는지 확인하는 조건입니다.

차이점으로는 IN의 경우 입력한 값과 컬럼의 값을 하나하나 비교하지만 EXISTS의 경우 존재여부만 확인합니다.

때문에 속도가 빠르다는 장점이 있습니다.

그리고 EXISTS에서는 서브쿼리만을 사용하여 값을 확인할 수 있습니다.

서브쿼리란 쿼리안에 괄호를 이용하여 또 다른 하위 쿼리를 말합니다.

EX) EXISTS, SALARY가 9000, 10000, 11000인 데이터

사실 서브쿼리에서 IN과 같이 조건을 다 명시하였지만 예시를 들기 위하여 위와 같이 작성하였고 특정 서브쿼리의 결과가 특정 테이블에 데이터가 있는지 없는지 확인할 때 사용합니다.

 

7) LIKE 조건

LIKE 조건의 경우 영어 해석대로 ~와 비슷할 경우 출력된 데이터를 처리할 때 사용합니다.

이 때 함께 사용되는 것이 %입니다.

%가 없을 경우 원하는 데이터를 출력할 수 없습니다.

EX) LIKE, FIRST_NAME이 A로 시작되는 데이터

EX) LIKE, FIRST_NAME이 r로 끝나는 데이터

 

 

반응형

댓글