인라인뷰의 함수 사용시 ORA-00904 발생합니다. 0 2 1,912

by 치킨치킨 [SQL Query] [2017.01.25 20:35:09]


안녕하세요. 쓰레기값이긴 하지만 쿼리 테스트를 위해 예시 들겠습니다.

인라인 뷰의 함수(SUM)를 메인 SQL의 컬럼으로 지정하려고 하는데 에러가 납니다.

-- ORA-00904: "B"."AA": invalid identifier

select a.tablespace_name,b.tablespace_name,b.aa
from dba_data_files a, (select tablespace_name,sum(bytes) "aa" from dba_data_files  group by tablespace_name) b
where a.tablespace_name=b.tablespace_name;

 

혹시 방법 있을까요?

 

 

by jkson [2017.01.25 21:03:13]

영문 alias에 대해서는 보통 따옴표를 쓰지 않고 그냥 aa 혹은 as aa라고 적어주시면 됩니다.

보통 큰 따옴표를 쓰는 경우는 alias명이 한글인 경우에 사용해요. "aa" 부분을 "가나다" 로 하시고

select 가나다 from dba~ 라고 해보세요


by 마농 [2017.01.31 11:30:11]

알리아스는 대소문자 구별 없이 대문자가 됩니다.
테이블명, 컬럼명, 각종명칭 등도 마찬가지로 기본 대문자입니다.
그러나 따옴표를 사용하게 되면 대소문자 구별됩니다.
"aa" 하셨으면 소문자 aa 로 만들어 진 것입니다.
소문자로 인지하려면 마찬가지로 따옴표 붙여서 사용해야 합니다.
아예 처음부터 따옴표 빼는것을 추천합니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입