您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

sql insert into select 的用法

2024/3/31 19:59:25发布12次查看
insert into select语句
 语句形式为:insert into table2(field1,field2,...) value1,value2,... from table1
 要求目标表table2必须存在,由于目标表table2已经存在,所以我们除了插入源表table1的字段外,还可以插入常量
sql>
sql>
sql> create table employee (
  2  id          number,
  3  name        varchar(100),
  4  birth_date  date,
  5  gender      varchar2(30) );
table created.
sql>
sql>
sql> insert into employee (id,name,birth_date,gender )
  2  select 200,'chris',null,'male' from   dual;
1 row created.
sql>
sql>
sql> drop table employee;
table dropped.
select into from语句
      语句形式为:select vale1, value2 into table2 from table1
      要求目标表table2不存在,因为在插入时会自动创建表table2,并将table1中指定字段数据复制到table2中。示例如下:
带有条件选择where
sql>
sql> create table employee (
  2  id          number,
  3  name        varchar(100),
  4  birth_date  date,
  5  gender      varchar2(30) );
table created.
sql>
sql> insert into employee (id,name,birth_date,gender ) select 300,'h',null,'male' from   dual d
  2  where not exists (select 1 from   employee x where  x.id = '300' );
1 row created.
sql>
sql> select * from employee;
    id
------
name
----------------------------------------------------------------------
birth_date gender
---------- ------------------------------
   300
h
null       male
insert bulk by insert ... into ... select
sql>
sql> create table project (
  2    pro_id              number(4),
  3    pro_name            varchar2(40),
  4    budget          number(9,2),
  5    constraint project_pk   primary key (pro_id)
  6  );
table created.
sql>
sql>
sql> insert into project(pro_id, pro_name, budget)values (1001, 'a',12345);
1 row created.
sql> insert into project(pro_id, pro_name, budget)values (1002, 'erp',23456);
1 row created.
sql> insert into project(pro_id, pro_name, budget)values (1003, 'sql',34567);
1 row created.
sql> insert into project(pro_id, pro_name, budget)values (1004, 'crm',45678);
1 row created.
sql> insert into project(pro_id, pro_name, budget)values (1005, 'vpn',56789);
1 row created.
sql>
sql>
sql> set echo on
sql> insert into project (pro_id, pro_name)
  2     select pro_id+8000,
  3            substr(pro_name,1,31) || ' overhead'
  4     from project;
5 rows created.
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product