비교연산자
- 같다 =
- 같지 않다 != <> ^=
- 크다, 작다 > <
- 같거나 크다, 같거나 작다 >= <=
주의!! NULL
존재하지 않는 것이므로 비교대상 될 수없음 ⇒ 비교연산자 사용 불가
nvl이나 nvl2, is(not) 사용
null값 있는 행의 모든 컬럼 출력
select *
from 테이블명
where nvl(null값 컬럼, -9999) = -9999;
where null컬럼 is null;
null값이 아닌 행의 모든 컬럼 출력
select *
from 테이블명
where nvl(null값 컬럼, -9999) != -9999;
where null컬럼 is not null;
where not (null컬럼 is null);
where not null컬럼 is null; -->()생략가능
조건) 50이 아닌 모든 컬럼(null포함) 출력
select *
from 테이블
where null컬럼 != 50 --> null은 비교 불가능이라 null은 포함되지 않음
where nvl(null컬럼, -9999) != 50 --> null이 -9999가 되므로 null도 포함됨
범위 연산자
범위 연산자 ⇒ 숫자뿐만 아니라 문자, 날짜까지 모두 사용
< > <= >= between A and B
select *
from 테이블명
where 컬럼명 between 조건1 and 조건2
- 문자
- select * from 테이블명 where 'ab' <= 컬럼명 and 컬럼명 <= 'I'
- 날짜
- select * from 테이블명 where 'RR/MM/DD' <= 컬럼명 and 컬럼명 < 'RR/MM/DD'
AND OR IN() NOT 연산자
and ⇒ 교집합, *
select *
from 테이블명
where 조건식1 and 조건식2;
or, in() ⇒ 집합, +
select *
from 테이블명
where 조건식1 or 조건식2;
또는
where 조건컬럼 in(조건1,조건2);
where 조건컬럼 not in(조건1,조건2);
and or 혼용 ⇒ and 우선(먼저 실행) (*와 + 중에 *먼저 하는것)
연산자 가장 최우선은 괄호()
'데이터베이스 Database > Oracle' 카테고리의 다른 글
ORACLE day2_테이블 (1) | 2022.06.30 |
---|---|
ORACLE day2_select명령어_order by (1) | 2022.06.30 |
ORACLE day1_select 명령어 (0) | 2022.06.30 |
ORACLE day1_describe 명령어 (0) | 2022.06.30 |