본문 바로가기
728x90

SQL 함수23

[ORACLE] LNNVL() 함수 활용 예제 모음과 실무 적용 법 Oracle SQL을 다루는 개발자라면 반드시 알아야 할 고급 함수 중 하나가 LNNVL 함수입니다. 이 함수는 일반적인 조건문으로 처리하기 어려운 NULL 값 비교 문제를 해결하는 데 매우 유용합니다. 본 글에서는 ORACLE LNNVL 함수의 정의, 사용법, 예제, 유사 함수와의 비교 등을 통해 실무에서 바로 활용할 수 있도록 정리하였습니다.LNNVL 함수란?LNNVL(condition)은 condition의 결과가 FALSE 또는 UNKNOWN(NULL) 일 경우 TRUE를 반환하고, condition이 TRUE일 경우 FALSE를 반환하는 Oracle SQL 함수입니다.문법LNNVL(condition)※ condition은 Boolean 조건식입니다.용도NULL이 포함된 칼럼의 값을 비교할 때 유.. 2025. 6. 7.
[ORACLE] USERENV() 함수로 접속 정보와 세션 상태 추적하기 1. USERENV 함수란?USERENV는 Oracle Database에서 사용자의 환경 및 세션 정보를 조회하기 위한 내장 함수입니다. 보통 PL/SQL 트리거나 감사 로그 등에서 접속 정보, OS 사용자, 인증 방법 등을 추적하기 위해 사용됩니다.2. 기본 문법USERENV(parameter)parameter는 문자열이며, USERENV가 반환할 정보를 지정합니다.3. 주요 파라미터 목록 및 설명파라미터설명예시 결과ISDBA현재 사용자가 DBA 권한을 가지고 있는지 여부TRUE / FALSELANGUAGE데이터베이스 언어 및 문자셋AMERICAN_AMERICA.AL32UTF8SESSIONID세션 식별자12345TERMINAL사용자의 터미널 이름 또는 접속 IPpts/2 또는 192.168.0.5AUT.. 2025. 6. 7.
[ORACLE] CASE() 함수 사용법과 DECODE, IF-ELSE와의 차이점 비교 1. CASE 함수란?Oracle의 CASE 함수는 SQL 문 내에서 조건에 따라 서로 다른 결과를 반환할 수 있도록 하는 조건 분기 함수입니다. 다양한 조건 처리와 복잡한 로직을 명확하게 표현할 수 있어 보고서 작성, 데이터 분석, 비즈니스 로직 구현 등 실무에서 매우 유용하게 활용됩니다. CASE 함수는 표준 SQL 문법을 따르며, DECODE 함수보다 더 유연한 분기 처리를 지원합니다.2. CASE 함수의 문법CASE 함수에는 두 가지 문법 형식이 있습니다.2-1. 단순 CASE 표현식CASE expr WHEN value1 THEN result1 WHEN value2 THEN result2 [...] ELSE default_resultEND2-2. 검색 CASE 표현식CASE WHEN co.. 2025. 6. 7.
[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.
728x90