(8.0.32)
drop table tab1;
create table tab1(col1 int);
insert into tab1 values(1);
insert into tab1 values(1);
insert into tab1 values(2);
insert into tab1 values(2);
select * from tab1;
select col1,count(*) from tab1 group by 1;
select count(*),col1 from tab1 group by 2;
数値指定可能
(19c)
drop table tab1 purge;
create table tab1(col1 int);
insert into tab1 values(1);
insert into tab1 values(1);
insert into tab1 values(2);
insert into tab1 values(2);
commit;
select * from tab1;
select col1,count(*) from tab1 group by 1;
select count(*),col1 from tab1 group by 2;
行1でエラーが発生しました。:
ORA-00979: GROUP BYの式ではありません。
数値指定不可★
(23c)
下記初期化パラメーターを設定すれば使用可能
show parameter group_by_position_enabled;
alter session set group_by_position_enabled = true;
(15)
drop table tab1;
create table tab1(col1 int);
insert into tab1 values(1);
insert into tab1 values(1);
insert into tab1 values(2);
insert into tab1 values(2);
select * from tab1;
select col1,count(*) from tab1 group by 1;
select count(*),col1 from tab1 group by 2;
数値指定可能
(2022)
drop table tab1;
create table tab1(col1 int);
insert into tab1 values(1);
insert into tab1 values(1);
insert into tab1 values(2);
insert into tab1 values(2);
select * from tab1;
select col1,count(*) from tab1 group by 1;
select count(*),col1 from tab1 group by 2;
メッセージ 164、レベル 15、状態 1、行 10
各 GROUP BY 式には、外部参照ではない列が少なくとも 1 列含まれている必要があります。
数値指定不可★