DBMS/Oracle 4

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

오라클에서 문자열을 저장하거나, 조회시 개행처리가 필요한 경우 아스키코드 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) 사용하는 방법은 문자열 사이 개행하고 싶은..

DBMS/Oracle 2021.06.15

[Oracle] NULL 일 경우 공백으로 처리되는 문제 해결

오라클에서 보면 종종 NVL(컬럼값,'') 이와 같이 처리된 부분을 볼 수 있을 것이다. 여기서 컬럼값에 NULL 이 들어가면 ''으로 변환한다는 의미인데, 어짜피 oracle은 ''을 NULL로 인식되어 NVL(컬럼값,'') 와 같은 처리는 의미 없어지게 됩니다. 특히 NVL(컬럼값,'') = '' 와 같이 처리를 해서 case when 절을 사용한다면 정상적으로 처리되지 않을 가능성이 높다. 예를 들면 CASE WHEN NVL(A.PASSWD_EDIT_D,'') = '' THEN TO_CHAR(A.REG_DATE + 90, 'YYYYMMDD') ELSE TO_CHAR(A.PASSWD_EDIT_D + 90, 'YYYYMMDD') END passwordEditDate NULL 이 되었을 때 TO_CHAR..

DBMS/Oracle 2021.01.08