개발군싹

[ORACLE DATABASE] SELECT문(1) - 작성문, NVL함수(NULL값 처리) 본문

DB

[ORACLE DATABASE] SELECT문(1) - 작성문, NVL함수(NULL값 처리)

개발자군싹 2023. 10. 13. 00:16

DataBase

SELECT문이란?

SELECT 구문에 의해 반환된 행들의 집합. 데이터를 조회한 결과를 'Result Set'이라고 한다. 

Result Set은 0개 이상의 행이 포함될 수 있고 특정 기준에 의해 정렬 가능한 테이블의 특정 컬럼, 행 또는 여러 테이블의 행과 컬럼을 조회하는 것.

 

SELECT 작성법

SELECT 컬럼 명 [, 컬럼명, …] 
FROM 테이블 명
[WHERE 조건식];

SELECT 
조회하고자 하는 컬럼명을 작성한다. 여러 컬럼을 조회하는 경우 컬럼은 쉼표로 구분하고, 마지막 컬럼 다음은 쉼표를 사용하지 않는다. 모든 컬럼 조회 시 컬럼 명 대신 ‘*’ 기호 사용 가능하며 조회 결과는 작성한 컬럼명 순서로 출력된다.
FROM 
조회하려는 컬럼이 포함된 테이블 명을 작성한다.
WHERE 
특정 행을 선택하여 원하는 값을 출력하기 위한 조건문. 여러 개의 제한 조건을 포함할 수 있으며, 각각의 제한 조건은 논리 연산자로 연결한다. 제한 조건을 만족시키는 데이터가 존재 시 해당 데이터 결과를 Result Set에 포함하여 결과를 얻을 수 있다.

 

SELECT문 사용

테이블 명이 'EMPLOYEE' 인 테이블의 전체 조회결과

EMPLOYEE TABLE 전체 조회

WHERE절을 이용한 'EMP_ID'가 200인 사원의 정보를 출력

EMP_ID = 200 인 사원의 정보 조회

SELECT문에 컬럼명을 기재하여 원하는 결과를 조회하여 출력 (EMP_ID, EMP_NAME, SALARY)

🔥부서(DEPT_CODE)가 'D4, D5, D6' 인 직원 조회 

SELECT문에 조회하려는 컬럼(COLUMN)을 작성하여 출력

NVL함수를 이용하여 NULL 값 대체하기

테이블을 조회하다보면 컬럼에 NULL값이 출력되는것을 볼 수 있다. 이 NULL값은 연산이 불가능하므로 NULL이 포함된 컬럼이 연산에 필요한 경우 'NVL'함수를 이용하여 연산에 필요한 데이터로 변경 가능하다.

 

  • NVL함수를 사용하지 않고 BONUS 컬럼의 값을 출력

  • NVL함수를 사용하여 않고 BONUS 컬럼의 값을 0으로 변경하여 출력

🔥필요에 따라 NVL함수를 이용하여 조회하고자 하는 컬럼의 NULL값을 원하는 대체 값으로 변경하여 조회할 수 있다.