본문 바로가기
728x90

oracle492

[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.
[ORACLE] RAWTOHEX() 함수 실무 활용 법 : 해시 값, 토큰 비교에 강력한 이유 1. RAWTOHEX() 함수란?RAWTOHEX() 함수는 Oracle에서 RAW 데이터를 16진수 문자열(HEX)로 변환하는 데 사용됩니다. 이 함수는 BLOB, 암호화된 데이터, 해시값 등 사람이 읽을 수 없는 RAW 데이터를 시각화하거나 디버깅할 때 매우 유용합니다.2. 문법RAWTOHEX(raw_input)raw_input: RAW 타입의 입력 값반환값: VARCHAR2 타입의 16진수 문자열3. 기본 사용 예제예제 1: RAW 값 변환SELECT RAWTOHEX(UTL_RAW.CAST_TO_RAW('Hello')) AS hex_output FROM dual;결과: 48656 C6 C6 F예제 2: 테이블 칼럼의 RAW 데이터 출력SELECT id, RAWTOHEX(binary_col) AS he.. 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] NUMTOYMINTERVAL() 사용법과 실전 예제로 배우는 기간 연산 처리 [Oracle] 오라클 NUMTOYMINTERVAL() 함수 완전 가이드1. NUMTOYMINTERVAL() 함수란?Oracle의 NUMTOYMINTERVAL() 함수는 숫자 값을 INTERVAL YEAR TO MONTH 데이터 타입으로 변환합니다. 즉, 숫자로 표현된 연도 또는 개월 수를 INTERVAL 형식으로 바꾸어 날짜 계산에 사용할 수 있도록 도와주는 함수입니다.2. 문법NUMTOYMINTERVAL(n, interval_unit)n: 간격을 의미하는 숫자 값 (예: 1, 2.5)interval_unit: 'YEAR' 또는 'MONTH'3. 기본 사용 예제예제 1: 1년 추가SELECT SYSDATE + NUMTOYMINTERVAL(1, 'YEAR') AS result_date FROM dual;.. 2025. 6. 6.
728x90