본문 바로가기
728x90

전체 글1350

[ORACLE] COALESCE() 함수로 복잡한 CASE 문 없이 NULL 처리하기 1. COALESCE 함수란?Oracle의 COALESCE 함수는 여러 인자 중 가장 첫 번째로 NULL이 아닌 값을 반환하는 SQL 표준 함수입니다. 데이터 정제, NULL 방지 처리, 보고서 출력 등에 매우 유용하며, NVL보다 더 유연한 다중 인자 처리가 가능하다는 장점이 있습니다.기본 문법은 다음과 같습니다:COALESCE(expr1, expr2, ..., exprN)expr1 ~ exprN: 평가 대상 값 목록NULL이 아닌 첫 번째 값을 반환모든 값이 NULL일 경우 NULL 반환2. 기본 사용 예제아래 예제는 3개의 표현식 중 첫 번째 NULL이 아닌 값을 반환하는 간단한 사례입니다.SELECT COALESCE(NULL, NULL, '대체값') AS result FROM DUAL;결과:RES.. 2025. 6. 7.
[ORACLE] NULLIF() 함수 완전 정복 : 두 값 비교로 NULL 반환하는 방식 1. NULLIF 함수란?NULLIF() 함수는 두 개의 값을 비교하여, 두 값이 같으면 NULL을 반환하고, 그렇지 않으면 첫 번째 값을 반환하는 Oracle SQL 내장 함수입니다. NULL 처리, 나누기 연산 예외 방지, 조건 분기 등에서 자주 사용되며, 간단한 구조임에도 실무에서 매우 유용하게 쓰입니다. 기본 문법은 다음과 같습니다:NULLIF(expr1, expr2)expr1: 비교할 첫 번째 표현식expr2: 두 번째 비교값2. 기본 사용 예제두 값이 동일하면 NULL, 그렇지 않으면 첫 번째 값을 반환합니다.SELECT NULLIF(100, 100) AS result1, -- 결과: NULL NULLIF(100, 200) AS result2 -- 결과: 100FROM DUAL.. 2025. 6. 7.
[ORACLE] NVL() 함수로 NULL 값을 기본 값으로 바꾸는 방법 1. NVL 함수란 무엇인가?Oracle의 NVL() 함수는 NULL 값을 다른 값으로 대체할 수 있도록 해주는 함수입니다. SQL 문에서 NULL 값이 존재할 때 원하는 기본값으로 대체함으로써, 연산 오류 방지와 가독성 향상에 기여합니다. NVL 함수의 기본 문법은 다음과 같습니다:NVL(expr1, expr2)expr1: NULL 여부를 판단할 표현식expr2: expr1이 NULL일 경우 반환할 값2. 기본 사용 예제다음 예제는 직원의 커미션이 NULL일 경우, '0'으로 대체하는 쿼리입니다.SELECT EMPLOYEE_NAME, COMMISSION_PCT, NVL(COMMISSION_PCT, 0) AS COMMISSION_REPLACEDFROM EMPLOYEES;위 쿼리에서는.. 2025. 6. 7.
[ORACLE] NVL2() 함수로 NULL 유무에 따른 조건 처리 쉽게 구현하기 1. NVL2 함수란?Oracle SQL에서 NVL2() 함수는 주어진 표현식이 NULL이 아닌 경우와 NULL인 경우를 구분하여 각각 다른 결과를 반환할 수 있도록 해주는 조건 분기 함수입니다. IF-ELSE와 유사한 형태를 SQL 내에서 간단히 구현할 수 있어 실무에서 매우 유용하게 사용됩니다. 기본 문법은 다음과 같습니다:NVL2(expr1, expr2, expr3)expr1: NULL 여부를 판단할 값expr2: expr1이 NULL이 아닐 경우 반환expr3: expr1이 NULL일 경우 반환2. 기본 사용 예제다음은 직원의 보너스가 있는 경우와 없는 경우를 구분하여 다른 메시지를 출력하는 예제입니다.SELECT EMPLOYEE_NAME, BONUS, NVL2(BONUS, .. 2025. 6. 7.
[ORACLE] ROWIDTOCHAR()로 ROWID를 문자형으로 변환하는 방법 1. ROWID란 무엇인가?Oracle에서 ROWID는 데이터베이스 내 특정 행(row)의 고유한 물리적 주소를 나타냅니다. 이는 테이블 내에서 행을 유일하게 식별할 수 있는 값이며, Oracle 내부적으로는 검색 성능을 높이기 위해 자주 사용됩니다. ROWID는 다음 네 가지 구성 요소로 이뤄집니다:데이터 오브젝트 번호데이터 파일 번호블록 번호행 번호2. ROWIDTOCHAR 함수란?ROWIDTOCHAR 함수는 ROWID 값을 CHAR 데이터 형식으로 변환하는 Oracle 내장 함수입니다. 이 함수는 ROWID 값을 문자열로 표현할 수 있게 하여, 로그 기록이나 디버깅, 외부 시스템 연동 시 유용하게 사용됩니다.ROWIDTOCHAR(rowid)입력값: ROWID반환값: CHAR(18)3. 기본 사용 예.. 2025. 6. 7.
[ORACLE] CHARTOROWID() 함수 완벽 가이드 : 문자형 ROWID를 ROWID로 변환 1. CHARTOROWID 함수란?CHARTOROWID는 Oracle Database에서 문자열(CHAR)로 표현된 ROWID 값을 내부 식별자 형태의 ROWID로 변환해 주는 함수입니다. 주로 문자열로 저장된 ROWID 값을 쿼리에서 사용할 수 있도록 내부 표현 형식으로 변환할 때 사용됩니다.2. 기본 문법CHARTOROWID(char) RETURN ROWID여기서 char는 유효한 ROWID 형식의 문자열이어야 하며, 결과는 Oracle의 ROWID 형식으로 반환됩니다.3. 주요 사용 예제예제 1: 문자열 ROWID를 ROWID로 변환SELECT CHARTOROWID('AAAPr9AAEAAAAFnAAA') AS actual_rowid FROM dual;예제 2: 테이블에 저장된 ROWID 문자열 활용.. 2025. 6. 6.
728x90