我正在尝试在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
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句