데이터 예시
강의평가(지원)
출력하고 싶은 형태
강의평가
(지원)
위와 같이 괄호'( )' 내용부터는 개행 처리하고싶을때
사용 함수 : REPLACE, CHR()
SELECT REPLACE('강의평가(지원)' , '(' , CHR(13)||CHR(10)||'(' ) AS DISABLED_NAME
// ① ② ③
FROM DUAL;
해설 및 구문 설명
REPLACE (①, ②, ③) : ①데이터의 ②를 ③으로 치환하겠다.
=> '강의평가(지원)' 데이터의 '(' 를 '줄바꿈(' 로 치환하겠다.
(① 데이터에는 컬럼명이 오면 되겠습니다.)
SQL Developer툴을 사용했는데, 출력결과를 그냥 봤을땐 별다른 처리가 이루어지지 않아 보이지만,
더블 클릭하면 아래와 같이 개행처리가 적용됐음을 확인할 수 있다.
오라클에서 사용되는 CHR 함수
CHR(9) : 탭(Tab)문자
CHR(10) : 줄바꿈(LF : Line Feed)
CHR(13) : 행의 처음(CR : carriage return)
CHR(13)과 CHR(10) 을 같이 사용하는 이유를 간단히 설명하면 Carriage Return(CR) 맨앞으로 이동 후 / Line Feed(LF) 일반적으로는 New Line, 즉 새로운 라인으로 이동 입니다.
다음 포스팅에 잘 설명 되어있어서 출처를 남깁니다.
프로그래밍 언어에서의 캐리지 리턴(CR)과 라인 피드(LF)
"과거 타자기를 제어하는 시절에는 작성하고 있는 문서를 한줄 내려서 작업 하기 위해 CR(커서를 맨앞으로 되돌리기)이후 LF(종이를 한칸 올리기)를 해야 했습니다.
즉 한 줄을 내리기 위해서는 CRLF(\r\n) 을 해야 했습니다. 아스키코드로는 13번과 10번입니다."