1

Topic: Operation singularity group by at left join in Oracle 12c, a bug or a feature?

Good afternoon,  with the following singularity of operation group by at left join in Oracle 12c
I will give an example:

create table temp_22112017_inn
as
select 1 inn from dual
union
select 2 from dual
union
select 3 from dual
/
create table temp_22112017_inn_sum
as
select 1 inn, 500 summ from dual
union
select 2, 600 summ from dual
union
select 3, 300 summ from dual
/--Ïî÷åìó òóò íå âîçíèêëî îøèáêè êàê ýòî áûëî â 11ñ
select inn, summ from
(select a.inn, summ
from
(select distinct inn from temp_22112017_inn) a
left join (select inn, sum (summ) summ from temp_22112017_inn_sum b group by inn) b on a.inn = b.inn)
group by inn
/
/*
drop table temp_22112017_inn;
drop table temp_22112017_inn_sum;
oracle database 12c enterprise edition release 12.1.0.2.0 - 64bit production
*/

It is absolutely not clear, why there was no error thus, what the aggregate on summ how it was in 11 is not specified?
Thus deduces similar simply  record, or throws off the right part of request.
Who can help  that it: the Bug or a feature? If the feature it is not clear as it works?

2

Re: Operation singularity group by at left join in Oracle 12c, a bug or a feature?

Nubik-Bobik;
The comment not  to the coding: / - Why here there was no error as it was in 11

3

Re: Operation singularity group by at left join in Oracle 12c, a bug or a feature?

Nubik-Bobik;
Bug,

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production 0
PL/SQL Release 12.1.0.2.0 - Production 0
CORE 12.1.0.2.0 Production 0
TNS for Linux: Version 12.1.0.2.0 - Production 0
NLSRTL Version 12.1.0.2.0 - Production

with temp_22112017_inn as (
select 1 inn from dual
union
select 2 from dual
union
select 3 from dual)
, temp_22112017_inn_sum as (
select 1 inn, 500 summ from dual
union
select 2, 600 summ from dual
union
select 3, 300 summ from dual
)
select inn, summ from
(select a.inn, summ
from
(select distinct inn from temp_22112017_inn) a
left join (select inn, sum (summ) summ from temp_22112017_inn_sum b group by inn) b on a.inn = b.inn)
group by inn
/
ORA-00979: not a GROUP BY expression

....
stax