본문 바로가기
728x90

SQL 함수23

[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] 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.
[ORACLE] HEXTORAW() 함수 완전 정복 : 16진수 → RAW 변환 실무 가이드 1. HEXTORAW() 함수란?Oracle의 HEXTORAW() 함수는 16진수 문자열(Hexadecimal string)을 RAW 데이터 타입으로 변환하는 함수입니다. 이 함수는 바이너리 데이터를 다룰 때 주로 사용되며, 암호화 키 처리, 바이너리 비교, BLOB 저장 등에서 활용됩니다.2. 함수 문법HEXTORAW(hex_string)hex_string: 짝수 길이의 16진수 문자열 (예: '4 F2 A')반환값: RAW 데이터3. 기본 사용 예제예제 1: 16진수를 RAW로 변환SELECT HEXTORAW('48656C6C6F') AS raw_value FROM dual;결과: 'Hello'에 해당하는 ASCII 코드 16진 값을 RAW 타입으로 반환예제 2: BLOB 저장을 위한 RAW 변환IN.. 2025. 6. 6.
[ORACLE] CAST() 사용법과 실전 예제 : 숫자, 날짜, 문자 변환까지 1. 오라클 CAST 함수란?CAST() 함수는 오라클에서 하나의 데이터 타입을 다른 데이터 타입으로 변환할 때 사용하는 SQL 표준 함수입니다. 예를 들어 문자열을 숫자로, 숫자를 날짜로 변환할 수 있습니다.CAST (expression AS data_type)CAST 함수는 ANSI SQL 표준을 따르므로, 오라클 외 다른 RDBMS에서도 광범위하게 사용됩니다.2. CAST 함수 기본 사용법-- 문자열을 숫자로 변환SELECT CAST('100' AS NUMBER) FROM DUAL;-- 숫자를 문자열로 변환SELECT CAST(2025 AS VARCHAR2(10)) FROM DUAL;위 예제는 각각 문자열을 숫자로, 숫자를 문자열로 변환하는 방식입니다. 숫자 → 문자열 변환 시에는 VARCHAR2의.. 2025. 6. 6.
[ORACLE] TO_CHAR() 함수로 숫자와 날짜 형식 자유자재로 변환하기 Oracle SQL에서 TO_CHAR() 함수는 날짜나 숫자 값을 문자열로 변환할 때 가장 많이 사용하는 함수입니다. 특히 데이터의 출력 형식을 제어하고자 할 때 매우 유용하게 사용됩니다.1. TO_CHAR 함수 기본 문법TO_CHAR(value, [format], [nls_parameter])value: 변환할 날짜나 숫자 값format: 출력 형식 지정 문자열nls_parameter: 국가별 설정 옵션 (선택사항)2. 날짜(Date) 형식 예제날짜 데이터를 문자열로 변환하여 원하는 형식으로 출력할 수 있습니다.SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD') FROM DUAL;출력 결과: 2025-06-04자주 사용하는 날짜 포맷YYYY - 연도 (예: 2025)MM - 월 (01 .. 2025. 6. 5.
[ORACLE] TO_NUMBER() 함수로 문자형 숫자 데이터 안전하게 변환하는 방법 1. TO_NUMBER 함수란?Oracle의 TO_NUMBER() 함수는 문자열(String)이나 날짜(Date) 데이터를 숫자(Number)로 변환할 때 사용하는 변환 함수입니다. 주로 사용자 입력 데이터나 외부 파일 데이터를 정형화된 숫자로 변환할 때 유용합니다.2. 기본 문법TO_NUMBER(char [, format_model] [, nls_parameter])char: 변환할 문자형 데이터format_model: (선택) 변환할 숫자 형식nls_parameter: (선택) 지역화 설정3. 기본 사용 예제SELECT TO_NUMBER('12345') AS result FROM dual; -- 결과: 12345위 예제는 문자열 '12345'를 숫자 12345로 변환합니다.4. 포맷 모델을 사용하는 .. 2025. 6. 5.
728x90