复制表结构和数据SQL语句

select * into 目标表名 from 源表名

insert into 目标表名(fld1, fld2) select fld1, 5 from 源表名

以上两句都是将 源表 的数据插入到 目标表,但两句又有区别的:

第一句(select into from)要求目标表不存在,因为在插入时会自动创建。 
第二句(insert into select from)要求目标表存在,由于目标表已经存在,所以我们除了插入源表的字段外,还可以插入常量,如例中的:5。

1:复制表结构及数据到新表

select * into 目的数据库名.dbo.目的表名 from 原表名

select * into my0735home.dbo.infoMianTest from infoMian

2:备份表的一部分列(不写*而写出列的列表)

select 列名1,列名2,列名3 into 目的数据库名.dbo.目的表名 from 原表名

select id,title,mtype,stype,author,tel,nr into infoMianTest2 from infomian

3:备份表的一部分行(加WHERE条件)

select * into 目的数据库名.dbo.目的表名 from 原表名 where id<10

select * into infomiantest2 from infomian where id<10

4:备份表的一部分列(不写*而写出列的列表)和一部分行(加WHERE条件)

select 列名1,列名2,列名3 into 目的数据库名.dbo.目的表名 from 原表名 where  id<10

5:只复制表的结构:如:SELECT * INOT t1 FROM titles WHERE 1=2

6:查询结果来源于多个表:如:

SELECT title_id,title,pub_name INTO t3

FROM titles t INNER JOIN publishers p

ON t.pub_id=p.pub_id

时间: 2024-08-25 22:19:13

复制表结构和数据SQL语句的相关文章

Oracle与Sql Server复制表结构及数据

1.Oracle create table 新表名 AS SELECT * FROM 源表名 2.Sql Server SELECT * into 新表名 from 源表名 Oracle与Sql Server复制表结构及数据

SQL复制表结构和数据

1.复制表结构和数据 select * into 目的数据库名.dbo.目的表名 from 原表名 select * into my0735home.dbo.infoMianTest from infoMian 2.复制表的一部分列(非*) select 列名1,列名2,列名3 into 目的数据库名.dbo.目的表名 from 原表名 select id,title,mtype,stype,author,tel,nr into infoMianTest2 from infomian 3备份表的

mysql复制表结构和数据

1.复制表结构: create table newName like oldName;//可以复制所有结构. 或者: create table newName select * from oldName where 1<>1;//让where条件不成立,只能拷贝结构,无法拷贝内容,且外键约束 .主键约束.唯一约束不会被复制.2.向已存在的表中复制数据: 如果两表结构一样: insert into newName select * from oldName; 如果两表结构不样: insert i

MySQL 复制表结构和复制表结构,数据

有时候有这样的需求,只需要复制表的结构,有时候复制表的数据和结构,那么怎么同时满足这样的要求呢,这样的代码怎么写呢? 使用 SHOW CREATE TABLE 命令获取创建数据表(CREATE TABLE) 语句,该语句包含了原数据表的结构,索引等.如果要加入内容,如果你想复制表的内容,你就可以使用 INSERT INTO ... SELECT 语句来实现. SHOW CREATE TABLE dc3688_tbl \G; 修改SQL语句的数据表名,并执行SQL语句 CREATE TABLE `

查询和删除表中重复数据sql语句

  1.查询表中重复数据.select * from peoplewhere peopleId in (select   peopleId   from   people   group   by   peopleId   having   count(peopleId) > 1)2.删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录delete from people where peopleId   in (select   peopleId

跨数据库服务器,复制表结构及数据(procedure)

USE [PIS] GO /****** Object: StoredProcedure [dbo].[SynchronizePDI] Script Date: 2020/3/28 20:54:51 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: <Author,,Name> -- Create date: &

SqlServer 复制表结构及数据

SqlServer中: 目标表存在: INSERT INTO 目标表 SELECT * FROM 原表; 目标表不存在:SELECT * INTO 目标表 FROM 原表; Oracle中: 目标表存在:INSERT INTO 目标表 SELECT * FROM 原表; 目标表不存在:CREATE TABLE 目标表 AS SELECT * FROM 原表; 原文地址:https://www.cnblogs.com/chenyanbin/p/10503914.html

删除oracle 表中重复数据sql语句、保留rowid最小的一条记录

delete from tablename a where rowid > ( select min(rowid) from table_name b where b.id = a.id and b.name=a.name);

SQL复制表结构或表数据

需求: 软件开发过程中,一般会部署两个数据库:一个测试数据库提供给开发和测试过程使用:一个运维数据库提供上线使用.当需求变化需增加表时,会遇到数据库表结构或表数据同步的问题,这时就要复制表结构或表数据. 两种情形: 一.两个数据库部署在同一服务器上: 从数据库A复制到B: 复制表结构和数据:select * into  数据库B.dbo.Department from 数据库A.dbo.Department 只复制表结构:  select * into  数据库B.dbo.Department