2016-03-17 3 views
0

Я работаю над сложным sql-запросом, и я всегда получаю ошибку ORA-00933 при ее выполнении. Я минимизирован запрос к этому минимальному примеру:Как использовать предложение GROUP BY в производной таблице в oracle

SELECT foo.bar, sum(foo.baz) 
    FROM (SELECT 123 as bar, 5 as baz FROM dual) as foo 
GROUP BY foo.bar 

кажется, что нужно сделать с помощью производной таблицы и предложения GROUP BY.

Как переписать запрос для поддержки предложения GROUP BY в производной таблице foo?

+0

Зачем вам нужна группа здесь? – Lucero

+1

@ Lucero Потому что я не хотел беспокоить вас остальной частью 10kB sql-инструкции, над которой я работаю. – SpaceTrucker

ответ

4

Oracle не поддерживает as для определения псевдонимов таблиц.

Так попробуйте это:

SELECT foo.bar, sum(foo.baz) 
FROM (SELECT 123 as bar, 5 as baz FROM dual) foo 
GROUP BY foo.bar; 

ли использовать as (хотя это не является обязательным) для псевдонимов столбцов.

+0

5-минутная работа, совместимая с ANSI SQL ... – jarlh

Смежные вопросы