programing

오라클에서 'as' 키워드를 사용하여 테이블에 별칭을 지정하는 방법은 무엇입니까?

topblog 2023. 7. 17. 20:31
반응형

오라클에서 'as' 키워드를 사용하여 테이블에 별칭을 지정하는 방법은 무엇입니까?

Oracle SQL Developer에서 이 쿼리를 실행하려고 합니다.

SELECT G.Guest_ID, G.First_Name, G.Last_Name
FROM Guest AS G
  JOIN Stay AS S ON G.Guest_ID = S.Guest_ID
WHERE G.City = 'Miami' AND S.Room = '222';

그러나 다음 오류가 발생합니다.

ORA-00933: SQL command not properly ended
00933. 00000 - "SQL command not properly ended"
*Cause:
*Action:
Error at Line: 2 Column: 12

저는 2행에 문제가 없다고 생각하고 오류를 설명할 수 없습니다.그것은 그것과 관련이 있는 것으로 보입니다.as키워드제가 제거하면 잘 작동합니다.하지만, 저는 제 질문이 매우 장황하기를 원합니다.따라서, 저는 문제가 무엇이든 제거하지 않고 해결할 수 있는 방법을 찾아야 합니다.as키워드

관련된 테이블의 구조는 다음과 같습니다.

CREATE TABLE GUEST
(
  GUEST_ID       NUMBER               NOT NULL,
  LAST_NAME      VARCHAR2(50 BYTE),
  FIRST_NAME     VARCHAR2(50 BYTE),
  CITY           VARCHAR2(50 BYTE),
  LOYALTY_NUMBER VARCHAR2(10 BYTE)    
);

CREATE TABLE STAY
(
  STAY_ID        NUMBER                         NOT NULL,
  GUEST_ID       NUMBER                         NOT NULL,
  HOTEL_ID       NUMBER                         NOT NULL,
  START_DATE     DATE,
  NUMBER_DAYS    NUMBER, 
  ROOM           VARCHAR2(10 BYTE)
);

미리 도와주셔서 감사합니다.

사용할 수 있습니다.AS테이블 앨리어싱은 여러 SQL 서버(최소한 MsSQL, MySQL, PostrgreSQL)에서 사용할 수 있지만 항상 선택 사항이며 Oracle에서는 불법입니다.

그래서 그것을 제거합니다.AS:

SELECT G.Guest_ID, G.First_Name, G.Last_Name
FROM Guest G

생략AS오라클의 테이블 별칭입니다.

SELECT G.Guest_ID, G.First_Name, G.Last_Name
FROM Guest G
  JOIN Stay S ON G.Guest_ID = S.Guest_ID
WHERE G.City = 'Miami' AND S.Room = '222';

그러면 오류 없이 출력이 제공됩니다.

언급URL : https://stackoverflow.com/questions/21145028/how-to-use-the-as-keyword-to-alias-a-table-in-oracle

반응형