SQL
ORACLE CLOB형 길이(length), 문자열 자르기(substr)
kmjkmj2005
2024. 1. 29. 08:50
ORACLE CLOB형 길이(length), 문자열 자르기(substr)
ORACLE에서 CLOB을 varchar2와 같은함수를 쓰면 에러남 ㅂㄷ
CLOB인거 문자열 자르기, length(길이) 확인은 아래처럼 하면됨
SELECT DBMS_LOB.SUBSTR(CLOB형 컬럼명, 자를 문자열 길이, OFFSET) AS "SUBSTR_DATA_COLUMN" -- 문자열 자르기
DBMS_LOB.GETLENGTH(CLOB형 컬럼명) AS "COLUMN_DATA_LENGTH" , -- 문자열
FROM ZORBA_EMPLOYEE
이렇게라는데, 우선 난 길이만 확인하면 되서 문자열자르기는 안해봄
응용하면 아래와 같다
SELECT DBMS_LOB.SUBSTR(CONTENTS, 1, DBMS_LOB.GETLENGTH(CONTENTS)) AS "LAST_CONTENT_CHAR"
DBMS_LOB.GETLENGTH(CONTENTS) AS "CONTENT_LENGTH"
FROM ZORBA_EMPLOYEE
이건 내가 해본 쿼리
SELECT APLY_NO, REG_DT, CERT_PBLKEY_AGRTM, DBMS_LOB.GETLENGTH(CSR), CSR
FROM ISUE_CMPLT_INF
WHERE 1=1
AND CERT_PBLKEY_AGRTM LIKE 'RSA(4096)'
AND CSR IS NOT NULL
ORDER BY REG_DT DESC
결과는 아래와 같음
까먹지말자