0
我有以下查询的Oracle 10g组
select mem.irsc_zona,
(case
when mem.irsc_membres = 1
then mem.irsc_valor
end) "1 membre",
(case
when mem.irsc_membres = 2
then mem.irsc_valor
end) "2 membres",
(case
when mem.irsc_membres = 3
then mem.irsc_valor
end) "3 membres",
(case
when mem.irsc_membres = 4
then mem.irsc_valor
end) "4 membres"
from
(select aip.irsc_zona, aip.irsc_membres, aip.irsc_valor from
ajt_irsc_peu aip
where aip.IRSC_FACTOR = '2.35'
and aip.IRSC_DATA_FI = TO_DATE('31/12/15')) mem;
返回以下
+-----------+----------+-----------+-----------+-----------+
| IRSC_ZONA | 1 membre | 2 membres | 3 membres | 4 membres |
+-----------+----------+-----------+-----------+-----------+
| A | 2080,46 | | | |
| A | | 2144,81 | | |
| A | | | 2237,06 | |
| A | | | | 2311,62 |
| B | 1950,43 | | | |
| B | | 2010,76 | | |
| B | | | 2097,24 | |
| B | | | | 2167,14 |
| C | 1835,7 | | | |
| C | | 1892,48 | | |
| C | | | 1973,87 | |
| C | | | | 2039,66 |
| D | 1560,35 | | | |
| D | | 1608,61 | | |
| D | | | 1677,79 | |
| D | | | | 1733,72 |
+-----------+----------+-----------+-----------+-----------+
我想有以下结果:
+-----------+----------+-----------+-----------+-----------+
| IRSC_ZONA | 1 membre | 2 membres | 3 membres | 4 membres |
+-----------+----------+-----------+-----------+-----------+
| A | 2080,46 | 2144,81 | 2237,06 | 2311,62 |
| B | 1950,43 | 2010,76 | 2097,24 | 2167,14 |
| C | 1835,7 | 1892,48 | 1973,87 | 2039,66 |
| D | 1560,35 | 1608,61 | 1677,79 | 1733,72 |
+-----------+----------+-----------+-----------+-----------+
所以,我想有结果按IRSC_ZONA分组,问题是我得到:
ORA-00979: no es una expresión GROUP BY
00979. 00000 - "not a GROUP BY expression"
*Cause:
*Action:
Error en la línea: 4, columna: 8
我不知道如何重构我的查询以获得预期结果。
希望我的问题很清楚。 如果不是,请告诉我如何提供更多细节。
在此先感谢,
非常感谢!这正是我需要的!只要我获得了我的声望,我会将其标记为正确的答案。不幸的是,还不能。 –
标记为正确!正在尝试upvote而不是将其检查为正确答案。再次感谢您的时间! –
不客气!无论如何,你总是在那里 - 你只是缺少sum()/ max()来聚合数据* {:-) – Boneist