Programming/Oracle 8

오라클 NULL 치환 함수 정리 (NVL, NVL2, COALESCE, NULLIF)

Oracle NULL 치환 함수 정리 (NVL, NVL2, COALESCE, NULLIF)해당 포스팅은 oracle null 치환 함수에 대해서 정리한 내용입니다.null 치환 함수는 실무에서도 쓰이면서 여러 시험 문제로도 많이 출제되기 때문에 잘 정리해 두면 좋을 것 같습니다. NVL, NVL2-- NVL 함수 형식NVL(주어진 값, 대체 값) 먼저 NVL 함수의 경우 '주어진 값'이 NULL인 경우 '대체 값'을 반환하며, 주로 NULL 값을 다른 값으로 대체할 때 사용됩니다.해당 함수는 '주어진 값'과 '대체 값'의 데이터 타입이 동일해야 하며, 동일하지 않을 경우 오류가 발생하게 됩니다. 간단한 사용 예시로는 다음과 같이 시험을 치지 않아 시험 점수(SCORE)가 NULL인 데이터에 대해 NULL..

Programming/Oracle 2024.06.06

Oracle INSTR 특정 문자를 찾을 때 사용하는 함수

(oracle) INSTR 특정 문자를 찾을 때 사용하는 함수오라클에서는 대상 문자열에 대해 특정 문자열을 포함하고 있는지를 확인할 때 'INSTR' 함수를 사용합니다. 'LIKE' 연산자는 조건절(WHERE 절)에서 특정 문자열이 포함된 데이터를 찾을 때 사용되지만, 'INSTR' 함수는 특정 문자열이 포함된 NUMBER 타입의 위치 정보를 반환하기 때문에 특정 문자열이 포함되었는지와 더불어 대상 문자열을 자를 때도 활용될 수 있습니다. 해당 포스팅에서는 'INSTR 함수의 기본적인 사용법 및 사용 예시'를 정리하였습니다. INSTR 기본 형식 및 특징INSTR(대상 문자열, 찾을 문자열 [, 찾기를 시작할 위치 [, 찾을 결과의 순번]]) 'INSTR' 함수는 다음과 같은 기본 형식을 가지고 있으며,..

Programming/Oracle 2024.05.15

oracle 반복문(LOOP, FOR LOOP, WHILE LOOP) 사용 방법 및 예시

오라클 반복문 사용 방법 및 예시(LOOP, FOR LOOP, WHILE LOOP) 해당 포스팅은 오라클 반복문(LOOP, FOR LOOP, WHILE LOOP)을 사용하는 방법 및 간단한 예시를 정리한 내용입니다. oracle에서 반복문은 PL/SQL(Procedural Language/Structured Query Language)을 사용하여 수행되기 때문에 프로시저나 함수 등을 작성할 때도 활용될 수 있는데요.아래 내용을 통해 oracle에서 사용되는 반복문인 'LOOP', 'FOR LOOP', 'WHILE LOOP' 각각의 개념과 특징, 그리고 예시를 살펴보겠습니다. LOOP/* LOOP 기본 구조 */LOOP --반복 작업 수행 EXIT WHEN 조건;END LOOP;(LOOP 기본 ..

Programming/Oracle 2024.05.06

oracle 사용자 정의 함수 function 생성 및 실행 방법

Oracle 사용자 정의 함수(User-Defined Function) 생성 및 실행 방법오라클 데이터베이스에는 숫자 함수, 문자 함수, 날짜 처리 함수, 데이터 변환 함수 등 다양한 표준 함수가 존재하며, 이러한 표준 함수 외에도 사용자가 정의하여 사용하는 함수인 '사용자 정의 함수(User-Defined Function)'가 존재하는데요. 최근 oracle 사용자 정의 함수를 사용해 보게 되면서 함수의 생성 방법과 세부적인 내용을 정리하였으며, 참고할 수 있는 간단한 사용 예시도 함께 기록하였습니다. Function 특징먼저 사용자 정의 함수(User-Defined Function)의 몇 가지 주요 특징을 살펴보면 아래와 같습니다.(프로시저와의 차이점에 대한 내용도 일부 포함되어 있습니다.)  - 함..

Programming/Oracle 2024.05.04

(Oracle) MERGE INTO 구문 사용 방법 및 예시

오라클 MERGE INTO 구문 사용 방법 및 예시 정리시스템 상의 여러 로직에서는 데이터 처리 시 다음과 같이 데이터를 처리해야 하는 경우가 다수 있습니다. 1. 해당 데이터가 있는지 확인 'SELECT'2-1. 데이터가 있는 경우 'UPDATE'2-2. 데이터가 없는 경우 'INSERT' 이럴 때 오라클의 'MERGE INTO' 구문을 사용하면 조건에 따라 테이블에 데이터를 삽입하거나 업데이트하는 것을 한 번에 처리할 수 있는데요.이어지는 내용을 통해 'MERGE INTO 구문의 사용 방법과 예시'에 대해서 살펴보겠습니다. MERGE INTO 구문 사용 방법MERGE INTO [TABLE / VIEW] -- UPDATE 또는 INSERT 할 대상 테이블 또는 뷰USING [TABLE / VI..

Programming/Oracle 2024.04.18

(Oracle) 계층형 쿼리 START WITH CONNECT BY PRIOR

Oracle 계층형 쿼리 START WITH CONNECT BY PRIOR오라클 쿼리 분석 과정에서 'START WITH ~ CONNECT BY PRIOR (+ ORDER SIBLINGS BY)'라는 계층형 쿼리 구문을 발견하여 관련 내용을 정리해 보았습니다.  계층형 쿼리란?데이터베이스에서 계층적인 구조를 가진 데이터를 조회하거나 조작하기 위해 사용되는 쿼리입니다.대표적으로 '기업의 조직도', '제품 카테고리', '게시글 및 댓글' 같은 데이터 유형이 계층 구조를 가질 수 있으며, 이러한 데이터를 효율적으로 다루기 위해 계층형 쿼리를 사용합니다. START WITH ~ CONNECT BY PRIOR'START WITH ~ CONNECT BY PRIOR' 구문은 오라클에서 계층형 쿼리를 위해 지원되는 기..

Programming/Oracle 2024.02.18

Oracle ROWNUM, ROW_NUMBER() 사용하기 (MySQL LIMIT와 차이점)

Oracle ROWNUM, ROW_NUMBER() 사용하기MySQL에서는 SELECT 문에서 'LIMIT'를 통해 조회할 데이터 결과 값의 로우를 제한할 수 있습니다.반면 Oracle에서는 'LIMIT'가 없기 때문에 결과 값의 로우를 제한하기 위해 'ROWNUM' 또는 'ROW_NUMBER()'를 사용하는데요. 해당 포스팅은 Oracle에서 'ROWNUM' 및 'ROW_NUMBER()'를 사용하는 방법과 MySQL(및 PostgreSQL)의 'LIMIT'와의 차이점을 살펴보겠습니다. MySQL LIMIT, Oracle ROWNUM 사용 방법 비교id (BIGINT or NUMBER)name (VARCHAR)state (VARCHAR)1김학생NORMAL2이학생NORMAL3최학생WITHDRAWAL4박학생N..

Programming/Oracle 2023.12.23

(Oracle) TO_CHAR, TO_NUMBER, TO_DATE 함수 정리

오라클(Oracle) TO_CHAR, TO_NUMBER, TO_DATE 함수 정리 최근에 오라클을 조금 사용해 보게 되면서 그 과정에서 알게 된 'TO_CHAR', 'TO_NUMBER', 'TO_DATE' 함수에 대해 정리한 내용입니다.TO_CHAR먼저 'TO_CHAR' 함수는 날짜, 숫자 등의 값을 문자열로 변환하는 함수입니다.해당 함수의 다양한 변환 방법의 예시는 아래와 같습니다. 1. 날짜 관련-- 날짜 포맷 변경1SELECT TO_CHAR(SYSDATE, 'YYYYMMDD') -- 20231216 , TO_CHAR(SYSDATE, 'YYYY/MM/DD') -- 2023/12/16 , TO_CHAR(SYSDATE, 'YYYY-MM-DD') ..

Programming/Oracle 2023.12.16