Команда SQL не правильно закончилась? - PullRequest
9 голосов
/ 21 марта 2012

Я использую оператор SQL с временным отношением и получаю сообщение об ошибке ORA-009933: SQL command not properly ended

Я не вижу ничего плохого в этом утверждении, поэтому любая помощь очень ценится. Заявление:

SELECT Temp.name,
       Temp.AvgSalary
FROM   (SELECT A.aid,
               A.aname       AS name,
               AVG(E.salary) AS AvgSalary
        FROM   Aircraft A,
               Certified C,
               Employees E) AS Temp; 

Спасибо

Ответы [ 2 ]

20 голосов
/ 21 марта 2012

oracle не поддерживает as для псевдонимов таблиц, только для псевдонимов столбцов, и они необязательны для этого использования => удалить все as ключевые слова;)

7 голосов
/ 21 марта 2012

Вы не должны ставить темп. При размещении псевдонима в таблице (или подзапросе) вы должны писать только псевдоним. Это должно работать:

SELECT Temp.name, Temp.AvgSalary 
FROM ( SELECT A.aid, A.aname AS name, AVG(E.salary) AS AvgSalary 
       FROM Aircraft A, Certified C, Employees E)  Temp;

С уважением,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...