Create table as select,有以下三种方式;
create table table1 as select * from table2 where 1=2;
创建一个表结构与table2一模一样的表,只复制结构不复制数据;
create table table1 as select * from table2 ;
创建一个表结构与table2一模一样的表,复制结构同时也复制数据;
create table table1(columns1,columns2) as
select columns1,columns2 from table2;
创建一个表结构与table2一模一样的表,复制结构同时也复制数据,但是指定新表的列名;
那么如何使用select结果创建新表呢?
CREATE TABLE AVG_DEPT {
dept varchar(20) ,
grade integer
primary key(dept)
};
INSERT INTO AVG_DEPT (dept,grade)
SELECT S.Sdept, AVG(SC.grade) avg_grade
FROM S,SC
WHERE S.Sno = SC.Sno
group by S.Sdept ;
首先创建一个新表,然后插入就行了。