[SQLD/P] Query 작성시 유의사항

Hyo Kyun Lee·2022년 10월 12일
0

SQLD/P

목록 보기
30/82

1. 오류 확인

오류내용 및 로그를 확인하는 것은 Query를 수정하기 위한 가장 기본적인 단계이다.

  • ORA-01789

질의의 결과 열의 수가 틀립니다.

UNION or UNION ALL을 할때 합치는 두 테이블의 column 수가 동일하지 않을 경우 발생한다.

  • ORA-01861

리터럴이 형식 문자열과 일치하지 않음

TO_DATE / SYSDATE 형식에 문자열이 들어가거나 TO_CHAR 형식에 DATE가 들어가는 등 입력 데이터 타입이 맞지 않을 경우 발생한다.

2. COLUMN을 상수값으로 설정

보통 SELECT문을 생각한다면

SELECT COLUMN_A, COLUMN_B
FROM TABLE

과 같이 특정 COLUMN에 있는 데이터를 그대로 읽어오는 형태를 떠올릴 것이다.

하지만 이러한 SELECT문에서도 상수값을 별도로 설정할 수 있다.

SELECT *
FROM(
	SELECT A.COLUMN_A AS A
    	 , A.COLUMN_B AS B
         --, B.COLUMN_A AS C --TABLE_B 결합불가할때
         , 'Y' AS C --임시조치
    FROM TABLE A_A, TABLE_B B
)

특히 table을 결합하는데 해당 table의 데이터가 없거나 결합할 수 없는 상태일 경우, 해당 COLUMN에 대해서만 상수값 처리를 하면 모든 쿼리문을 수정할 필요없이 간단하게 해결할 수도 있을 것이다.

3. 참고자료

ORA01789 - https://huskdoll.tistory.com/196
ORA01861 - https://ajdahrdl.tistory.com/11

0개의 댓글