Не имеет смысла включать столбцы, которые не являются частью предложения GROUP BY.Подумайте, есть ли в предложении SELECT значения MIN (X), MAX (Y), из какой строки должны поступить другие столбцы (не сгруппированные)?
Если ваша версия Oracle достаточно свежая, вы можете использовать SUM -OVER (), чтобы показать SUM (сгруппированный) для каждой строки данных.
SELECT
IMPORTID,Site,Desk,Region,RefObligor,
SUM(NOTIONAL) OVER(PARTITION BY IMPORTID, Region,RefObligor) AS SUM_NOTIONAL
From
Positions
Where
ID = :importID
Order BY
IMPORTID,Region,Site,Desk,RefObligor
В качестве альтернативы, вам нужно сделать агрегат из столбцов Site
, Desk
SELECT
IMPORTID,Region,Min(Site) Site, Min(Desk) Desk,RefObligor,SUM(NOTIONAL) AS SUM_NOTIONAL
From
Positions
Where
ID = :importID
GROUP BY
IMPORTID, Region,RefObligor
Order BY
IMPORTID, Region,Min(Site),Min(Desk),RefObligor