小编Hec*_*ros的帖子

Oracle SQL:如何在具有IDENTITY列的表上使用GROUP BY子句插入SELECT语句?

在一个应用程序中,我打算在Oracle 12c数据库上截断和插入,但是在IDENTITY列中发现了这个问题.尽管该INSERT... SELECT语句适用于SELECT我曾尝试过的大多数用法,但当该语句也有一个GROUP BY条款时,它无法工作,发出"ORA-00979:非GROUP BY表达式"投诉.下面是一些示例代码:

create table aux (
  owner_name varchar2(20),
pet varchar2(20) );

insert into aux values ('Scott', 'dog');
insert into aux values ('Mike', 'dog');
insert into aux values ('Mike', 'cat');
insert into aux values ('John', 'turtle');

create table T1 (
  id number generated always as identity,
  owner_name varchar2(20),
  pet_count number
);
insert into T1 (owner_name, pet_count) 
  select owner_name, count(*) as pet_count from aux group by owner_name;
select owner_name, …
Run Code Online (Sandbox Code Playgroud)

sql database oracle

5
推荐指数
1
解决办法
3739
查看次数

标签 统计

database ×1

oracle ×1

sql ×1