将一个表中的数据插入到另外的新表中

--创建测试表MyStudentInfo
CREATE table MyStudentInfo
(
  Id int not null primary key,
  Name varchar(16),
  Age int,
  Gender varchar(2),
  Phone varchar(16),
  Address varchar(50),
  GradeId int
)

 

--联合插入多条数据

INSERT INTO MyStudentInfo
SELECT 1,'张三',20,'1','15801258912','上海',1 UNION
SELECT 2,'李四',22,'1','12345678901','北京',1 UNION
SELECT 3,'王五',16,'1','13976891234','天津',2 UNION
SELECT 4,'赵六',19,'1','18676891234','重庆',3 UNION
SELECT 5,'小红',21,'2','17776891234','广州',4 UNION
SELECT 6,'小王',25,'2','13176891234','深圳',2 UNION
SELECT 7,'小刘',18,'2','13374591234','南京',1

一、SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中

1、将MyStudentInfo表的所有字段数据插入不存在的表
SELECT * INTO studentinfo_test1 FROM MyStudentInfo

2、将MyStudentInfo表的个别字段数据插入不存在的表

SELECT Id,Name INTO MytestInfo FROM myStudentInfo

3、带有where子句

SELECT Id,Name,Gender INTO MytestInfo FROM myStudentInfo WHERE Gender='1'

--查询MytestInfo表的数据

4、从一个以上的表中选取数据插入新表

SELECT s.Id,s.Name,s.GradeId,g.GradeName INTO NewTable
 FROM MyStudentInfo s INNER JOIN GradeInfo g
 on s.GradeId=g.Id

 

 

--查询NewTable表的数据

 

二、将studentinfo表里面的数据插入已经存在的表

--将MyStudentInfo表的id,name列插入studentinfo_test2(studentinfo_test2表已经存在)
INSERT INTO studentinfo_test2
SELECT * FROM MyStudentInfo

 

posted @ 2016-09-27 15:08  .NET开发菜鸟  阅读(1062)  评论(0编辑  收藏  举报