여니의 프로그래밍 study/Oracle

[Oracle] SELECT문 WHERE절 활용

여니's 2023. 5. 6. 17:14

 

1. LIKE

: 일부 문자열이 포함되어 있는 단어를 조회할 때 사용함

 

-- 1. 길이라는 단어가 포함되어 있는 데이터 조회
SELECT *
	FROM 사원테이블
  WHERE 사원명 LIKE '%길%'
  
-- 2. 길이라는 단어가 포함되지 않은 데이터만 조회
SELECT *
	FROM 사원테이블
  WHERE 사원명 NOT LIKE '%길%'

 

 


2. 집합 연산자 (UNION)

SELECT문 사이에 사용되며 합집합을 의미하는 연산자.

이떄, 각 SELECT 문이 출력하는 열의 개수와 열의 자료형이 순서별로 일치해야 한다. 

 

출력 열의 개수가 다르거나

출력 열의 자료형이 다르면

에러가 뜬다.

 

만약 출력 열의 개수와 자료형은 같으나

필드명이 다른 경우에는 

에러는 나지 않는다.

 

하지만 최종적으로 출력되는 열의 이름은

가장 처음에 작성한 SELECT 문의 열 이름으로 표기가 되기 때문에

데이터 정합성 문제가 발생할 수 있다. 

 

 

 

집합 연산자의 종류는 총 4가지

UNION SELECT문의 결과값을 합해준다. (이때, 중복값은 제거)
UNION ALL SELECT문의 결과값을 합해준다. (이때, 중복값 제거는 하지 않음)
MINUS 먼저 작성한 SELECT문의 결과값에서 나중에 작성한 SELECT문의 결과값을 차집합 처리한다. 
INTERSECT 먼저 작성한 SELECT문과 다음 SELECT문의 결과 값이 같은 데이터만 출력한다. (교집합)

 

 

SELECT A,B,C
	FROM EMP
  WHERE SALARY=100
UNION
SELECT A,B,C
	FROM EMP
  WHERE SALARY=200

 

 

 

 

참고문헌 : Do it 오라클로 배우는 데이터베이스 입문