SQL---一次插入多条数据【使用Union】


--做测试的时候使用。
--缺点:结果集的数量,类型都要一样。
INSERT INTO Student ( StudentID, StudentName, StduentAge, StudentBirthday, StudentGender, StudentPhone, StudentEmail, StudentAddress, Student_CourseID) SELECT StudentID, StudentName, StduentAge, StudentBirthday, StudentGender, StudentPhone, StudentEmail, StudentAddress, Student_CourseID FROM dbo.Student

再来看看这个SQL:

 INSERT INTO dbo.Class
   SELECT '1102','软件1102'
    UNION 
   SELECT '1103','软件1103'
    UNION 
   SELECT '1104','软件1104'
    UNION 
   SELECT '1105','软件1105'
    UNION 
   SELECT '1106','软件1106'
    UNION 
   SELECT '1106','软件1106'

标黄色的SQL:执行的结果是:

(无列名) (无列名)
1102 软件1102
1103 软件1103
1104 软件1104
1105 软件1105
1106 软件1106

 

我们已经学过Union关键字,会自动去除重复数据。所以只查询了5条数据。

现在完整执行上面的SQL:

 

看到影响的行数是:5

示例:不使用Union,一次插入多行数据

 INSERT INTO dbo.Country
  VALUES  ( N'湖南省'  -- CountryName - nvarchar(50)
            ),
  ( N'海南省'  -- CountryName - nvarchar(50)
            )
原文地址:https://www.cnblogs.com/caofangsheng/p/5135945.html