SQL 将1张表的数据复制到另1张表

语句很简单:

insert into TableA(ColA) select ColB from TableB where ...

注:ColA和ColB类型要一样。。。。

 

举例:

 

创建两张表:

CREATE TABLE [通信中断内容] (
 [编号] [int] IDENTITY (1, 1) NOT NULL ,
 [片区] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
 [基站名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [基站等级] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
 [通道名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [设备名称] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [开始时间] [datetime] NULL ,
 [屏蔽] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
 [采集时间] [datetime] NULL ,
 CONSTRAINT [PK_通信中断内容] PRIMARY KEY  CLUSTERED
 (
  [编号]
 )  ON [PRIMARY]
) ON [PRIMARY]
GO

 

CREATE TABLE [通信中断内容历史数据] (
 [编号] [int] IDENTITY (1, 1) NOT NULL ,
 [片区] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
 [基站名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [基站等级] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
 [通道名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [设备名称] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [开始时间] [datetime] NULL ,
 [屏蔽] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
 [采集时间] [datetime] NULL ,
 CONSTRAINT [PK_通信中断内容历史数据] PRIMARY KEY  CLUSTERED
 (
  [编号]
 )  ON [PRIMARY]
) ON [PRIMARY]
GO


随便在表[通信中断内容]中插入些数据,然后执行以下语句:

 

insert into 通信中断内容历史数据(片区,基站名,基站等级,通道名,设备名称,开始时间,屏蔽,采集时间) select 片区,基站名,基站等级,通道名,设备名称,开始时间,屏蔽,采集时间 from 通信中断内容

 

这样就可将表[通信中断内容]的数据复制到表[通信中断内容历史数据]中。

 

你可能感兴趣的:(SQL)