728x90
반응형
오류 발생 이유
쿼리(Query)를 작성하다보면 'TBR-8027: Column name is ambiguous'를 만날 때가 있다. 이 경우는 조인(Join) 등의 이유로 컬럼(Column)의 명칭이 중복되는 경우에 발생한다.
오류 예시
아래의 쿼리 처럼 A 테이블과 B 테이블을 가게명(STORE_NAME)으로 조인할 때 A 테이블의 가게명과 B 테이블의 가게명이 존재하게 되므로 명시적으로 어느 테이블의 가게명을 사용할 것인지를 지정해야 한다.
SELECT STORE_NAME, STORE_SALES, PRODUCT_PRICE
FROM
(SELECT 'APPLE' AS STORE_NAME, '100' AS STORE_SALES FROM dual) A
LEFT JOIN
(SELECT 'APPLE' AS STORE_NAME, '200' AS PRODUCT_PRICE FROM dual) B
ON A.STORE_NAME = B.STORE_NAME
해결 방법
컬럼 명칭 앞에 해당하는 테이블의 명칭을 붙여서 명시적으로 구분할 수 있게 쿼리를 작성하면 해결된다.
SELECT A.STORE_NAME, STORE_SALES, PRODUCT_PRICE
FROM
(SELECT 'APPLE' AS STORE_NAME, '100' AS STORE_SALES FROM dual) A
LEFT JOIN
(SELECT 'APPLE' AS STORE_NAME, '200' AS PRODUCT_PRICE FROM dual) B
ON A.STORE_NAME = B.STORE_NAME
728x90
반응형
'DBMS(DataBase Management System) > 티베로(Tibero)' 카테고리의 다른 글
[티베로] SQLGate for Tibero Developer 6개월 사용 후기 (0) | 2023.01.23 |
---|---|
[티베로] LPAD, RPAD - 부족한 문자열 길이를 특정 문자로 채우거나 특정 길이를 넘는 문자열을 자르기 (0) | 2023.01.18 |
[오라클/티베로] 특정 범위의 숫자 생성 (0) | 2023.01.04 |
[오라클/티베로] "JDBC-10007:UNIQUE constraint violation" (0) | 2022.11.01 |
오라클, 사이베이스, MS-SQL를 티베로로 마이그레이션 하는 도구 'TbMigrator' 설치 및 실행 (0) | 2022.09.16 |
댓글