개발 공부 3번째 이야기
WHERE 문 단일 조건
- 특정 조건에 부합하는 데이터만 조회하고 싶을 때 사용하는 SQL 구문
위의 경우 employee_id, job_id, salary를 선택후
job_id가 IT_PROG인 조건만 출력함.
(숫자인 경우에는 따옴표 사용안해도 됨)
연봉이 2400인 데이터를 불러옴.
WHERE 문 복수 조건
여러 조건을 모두 충족해야 하는 경우 AND 절 사용
여러 조건 중 하나만 충족해도 되는 경우 OR 절 사용
만약 job id가 IT_PROG가 아니면서 연봉이 2500이상인 경우를 출력하고 싶다면
컬럼 뒤에 ! 붙여주면 됨
문자열 및 날짜
- 문자열 및 날짜 값은 작은 따옴표로 묶음
- 문자 값은 대소문자를 구분하며 날짜값은 형식 구분
- 기본 날짜 형식은 DD-MON-RR
위에 2케이스처럼 문자와 날짜가 들어가는 경우 작은 따옴표를 사용해야 한다.
그렇지 않으면 오류 발생.
비교 연산자
= 같음
> 보다 큼
>= 보다 크거나 같음
< 보다 작음
<= 보다 작거나 같음
<> 같지 않음
BETWEEN ... AND ... 두 값 사이(경계값 포함)
IN(set) 값 리스트 중 일치하는 값 검색
LIKE 일치하는 문자 패턴 검색
IS NULL NULL 값인지 여부
= 연산자 사용 예시
job_id가 ST_MAN과 일치하는 값을 출력
> 연산자 사용 예시
location_id가 1700보다 클 경우 그 값들을 출력
>= 연산자 사용 예시
location_id가 1700이상이거나 그보다 클 경우 그 값들을 출력
<연산자 사용 예시
location_id가 1700보다 작을 경우 그 값들을 출력
<= 연산자 출력 예시
location_id가 1700이하이거나 그보다 클 경우 그 값들을 출력
<> 연산자 출력 예시
location_id가 1700이 아닌 값을 출력
*문자로도 출력 가능
작은 따옴표를 활용하면 문자로도 비교 연산자 사용 가능함!
BETWEEN ... AND 연산자 사용 예시
사용 방법 : WHERE + 테이블명 + BEWEEN + 조건 + AND +조건 ;
즉, 테이블명에서 어떤 범위를 정하고 싶을 때 사용하는 연산자 입니다.
날짜와 문자도 사용이 가능!
NOT BETWEEN 도 사용할 수 있음
NOT BEWEEN은 해당 범위에 해당하지 않는 값을 출력하고 싶을 때 사용하는 연산자입니다.
IN절 사용
→ WHERE 절 내에서 특정 값 여러개를 선택할 수 있는 연산자
사용 방법 : WHERE + 테이블명+ IN +(출력하고 싶은 값);
이 연산자를 이용하면 WHERE절 뒤에 칼럼명 중 IN 괄호값에 있는 데이터만 출력합니다.
위의 사진은 AD_VP와 ST_CLERK을 가진 데이터만 출력됩니다.
*NOT IN절 사용
NOT IN 절은 IN절과 반대로 IN값에 포함되지 않는 데이터를 출력하는 연산자입니다.
위의 예시는 AD_VP와 ST_CLERK를 제외한 값들만 출력되는 것을 알 수 있습니다.
LIKE 연산자
- 일치하는 패턴의 값을 출력함
- 즉, 해당하는 단어만 있으면 검색 가능
- 패턴에는 %와 _가 사용됨
- %는 모든 문자를 의미하며, _는 한 글자를 의미
% 사용 예시
%가 뒤에 오면 SA로 시작하는 문자가 있는 값 출력
%가 앞에 오면 REP로 끝나는 문자가 있는 값 출력
%가 앞뒤에 있으면 SA를 포함한 데이터를 모두 출력합니다.
_ 연산자
● _ : 글자 한자(글자수 제한있음)
● _SA : SA로 끝나는 문자(총 3글자)
● SA_ : SA로 시작하는 문자(총 3글자)
● _SA_ : SA가 포함된 문자(총4글자)
● _를 여러개 쓸경우 __수에 따라 글자수가 늘어남
위의 예시는 J뒤에 _를 3번 불러왔기 때문에 J로 시작하는 4글자를 출력함.
%와 _의 결합
위의 조건은 J로 시작하면서 동시에 J를 포함하는 이름들을 출력합니다.
'SQL 문 STUDY' 카테고리의 다른 글
SQL 함수 - 대소문자 변환, 문자 조작, 숫자 함수 (0) | 2022.12.27 |
---|---|
SQL 치환변수 / DEFINE / VERIFY / 바인드변수 (0) | 2022.12.26 |
SQL - NULL/ ORDER BY (0) | 2022.12.26 |
SQL문 alias/연결 연산자/리터럴 문자열/대체인용연산자/중복행 및 중복제거/테이블 구조표시 (0) | 2022.12.26 |
SQL _ SELECT/FROM/연산자 (0) | 2022.12.26 |