Не уверен насчет PostgreSQL, но в Oracle вы бы изменили квадратные скобки на двойные кавычки. Кроме того, он может жаловаться, потому что вы группируете по столбцам, которых нет в вашем наборе результатов. Возможно, вам придется изменить запрос, чтобы он также возвращал все поля группировки, например:
SELECT GENERAL_CAUSE_NFD."Cause Class",
DFS_FIRE_ARCHIVE.FIRE_YEAR AS "Year",
OBJECTIVES_NFD."Response Category",
DFS_FIRE_ARCHIVE.GENERAL_CAUSE,
DFS_FIRE_ARCHIVE.OBJECTIVE,
GENERAL_CAUSE_ORDER.ORDER,
OBJECTIVE_ORDER.ORDER,
DFS_FIRE_ARCHIVE.FIRE_MGT_ZONE,
DFS_FIRE_ARCHIVE.FIRE_TYPE,
Count(DFS_FIRE_ARCHIVE.REGION) AS "Total"
FROM (((DFS_FIRE_ARCHIVE
INNER JOIN GENERAL_CAUSE_ORDER
ON DFS_FIRE_ARCHIVE.GENERAL_CAUSE = GENERAL_CAUSE_ORDER.GENERAL_CAUSE)
INNER JOIN OBJECTIVE_ORDER
ON DFS_FIRE_ARCHIVE.OBJECTIVE = OBJECTIVE_ORDER.OBJECTIVE)
INNER JOIN OBJECTIVES_NFD
ON OBJECTIVE_ORDER.OBJECTIVE = OBJECTIVES_NFD.OBJECTIVE)
INNER JOIN GENERAL_CAUSE_NFD
ON GENERAL_CAUSE_ORDER.GENERAL_CAUSE = GENERAL_CAUSE_NFD.GENERAL_CAUSE
GROUP BY GENERAL_CAUSE_NFD."Cause Class",
DFS_FIRE_ARCHIVE.FIRE_YEAR,
OBJECTIVES_NFD."Response Category",
DFS_FIRE_ARCHIVE.GENERAL_CAUSE,
DFS_FIRE_ARCHIVE.OBJECTIVE,
GENERAL_CAUSE_ORDER.ORDER,
OBJECTIVE_ORDER.ORDER,
DFS_FIRE_ARCHIVE.FIRE_MGT_ZONE,
DFS_FIRE_ARCHIVE.FIRE_TYPE
HAVING (((DFS_FIRE_ARCHIVE.FIRE_YEAR)=2009) AND
((DFS_FIRE_ARCHIVE.FIRE_MGT_ZONE)="INT") AND
((DFS_FIRE_ARCHIVE.FIRE_TYPE)="IFR"))
ORDER BY GENERAL_CAUSE_ORDER.ORDER,
OBJECTIVE_ORDER.ORDER,
DFS_FIRE_ARCHIVE.OBJECTIVE;
Делись и наслаждайся.