본문으로 바로가기

[Oracle] 오라클 줄바꿈,개행 처리 (CHR(13),CHR(10))

category DB\SQL 2020. 5. 20. 11:22

오라클에서 문자열을 저장하거나, 조회시 개행처리가 필요한경우 아스키코드13번(carriage return) 과 10번(line feed) 를 사용 할 수 있다.

 

CHR(10) : line feed(new line) 커서가 위치한 줄의 아래로 이동

CHR(13) : carriage return 현재 커서가 위치한 줄의 맨 앞으로 커서이동

 

사용되는곳에 따라 라인피드(LF) 만으로 우리가원하는 개행(줄바구고 맨앞으로 커서위치) 가 될수도 있지만,

 

때에따라 요렇게 나올수도?

커서가 앞으로는 가지않고 줄바꿈만 된모습

줄바꿈의 정의는 OS마다 다르게 돼있다고 하는데,

 

유닉스/리눅스 환경에서는 라인피드(LF) 만으로 줄바꿈이 되고 (\n)

 

윈도우/DOS 환경에서는 캐러지리턴(CR),라인피드(LF) 조합으로 줄바꿈이 된다고 한다. (\r\n)

 

 

또다른 상황이 있을수도 있기때문에, 위와같이 줄바꿈만 되고 커서가 앞으로는 안가는 상황이 있을수도있다

 

 

사용하는 방법은 문자열 사이 개행하고싶은 부분에 CHR(10)과 CHR(13) 을 넣어주면 된다.

SELECT 'A'||CHR(10)||CHR(13)||'B' FROM DUAL

위와 같이 나오는데 중간에 깃발?(¶ : 단락기호) 처럼 생긴 아이콘은 개행문자이다.