Я выбираю данные из представления по следующему запросу
SELECT * FROM "SCH"."MyView"
Если я добавлю ORDER BY
SELECT * FROM "SCH"."MyView"
ORDER BY Name
, я получаю следующую ошибку
[Err] ORA-00979: not a GROUP BY expression
Переводит ли механизм запросов Oracle это неверный запрос?Как начать устранение неполадок, например, как это?
Вот упрощение "SCH". "MyView"
SELECT
Name,
(subquery) AS Foo,
(subquery) AS Bar
FROM
"SCH"."AnotherView"
GROUP BY
Name
Если я удалю подзапросы, я могу использовать ORDER BY без сообщений об ошибках,Подзапросы выглядят следующим образом:
( SELECT f.UnitPrice FROM "SCH"."AnotherView" f WHERE f.Name = main.Name AND f.Category = 'x' AND rownum < 2 ) AS priceX
( SELECT b.UnitPrice FROM "SCH"."AnotherView" b WHERE b.Name = main.Name AND b.Category = 'y' AND rownum < 2 ) AS priceY
Редактировать: Если я добавлю «WHERE rownum <9999999», я избавлюсь от ошибки.Мы работаем с версией 10.2.0.4.0 64bit. </p>