insert into WorkCenter_CourseTable (CourseTableID,TermID,ClassID,ClassNo,WeekDay,IsDouble,CourseName,GradeID,TeacherSysID,TeacherName,className) select newid() as CourseTableID ,@TermID as TermID, @ClassID as ClassID, @ClassNo as ClassNo, @WeekDay as WeekDay, @IsDouble as IsDouble, @CourseName as CourseName , @GradeID as GradeID,(select TeacherSysID from WorkCenter_TeacherCourse where TermID=@TermID and GradeID=@GradeIDand ClassID=@ClassID and CourseName= @CourseName) ,(select TeacherName from WorkCenter_TeacherInfo a inner join WorkCenter_TeacherCourse b on a.TeacherSysID=b.TeacherSysID where TermID=@TermID and GradeID= @GradeID and ClassID=@ClassID and CourseName= @CourseName),(select className from WorkCenter_ClassSet where classID=@ClassID)
一般插入语句都是
insert into 表 () values ()
特殊需要就要用这种方法了
insert into 表1 () select ....from 表2复杂一点的,比如涉及到2个以上的表:
insert into 表名(字段1,字段2,字段3,字段4)
select 'aa' as 字段1,'bb' as 字段2,'cc' as 字段3 ,(select 字段4 from 表 where 条件);
有insert select 和insert values 没有insert values (select )
最开始的一段代码就是最全面的一个例子
Update Tabel:
UPDATE Question
SET
NativeLanguageId = ln.NativeLanguageId,
StudyLanguageId =ln.StudyLanguageId
FROM LanguageNet ln
WHERE ln.LanguageNetId = Question.LanguageNetId