insert into 学生表 select SID,姓名 from 临时表
insert into 课程表 select CID,课程名 from 临时表
insert into 成绩表 select SID,CID,成绩 from 临时表
insert into 课程表 select CID,课程名 from 临时表
insert into 成绩表 select SID,CID,成绩 from 临时表
调试欢乐多
select SID,姓名 into 学生表 from 临时表
select CID,课程名 into 课程表 from 临时表
select SID,CID,成绩 into 成绩表 from 临时表
如果只有语文和数学成绩的话insert into 课程表 select 1,'语文' union select 2,'数学'insert into 学生表(姓名) select 姓名 from 临时表declare @i int
set @i=1
update 学生表 set sid=@i , @i=@i+1 from 学生表insert into 成绩表 select a.sid ,1, a.语文成绩
from 临时表 a , 学生表 b
where a.姓名=b.姓名 insert into 成绩表 select a.sid ,2, a.数学成绩
from 临时表 a , 学生表 b
where a.姓名=b.姓名
insert 学生表 (姓名) select 姓名 from 临时表insert 课程表 (课程名) select '语文' union select '数学'insert 成绩表
select *
from ( select a.sid,b.cid,c.语文成绩
from 学生表 a join 临时表 c on a.姓名=c.姓名,课程表 b
where b.课程名='语文' and c.语文成绩 is not null
union
select a.sid,b.cid,c.数学成绩
from 学生表 a join 临时表 c on a.姓名=c.姓名,课程表 b
where b.课程名='数学' and c.数学成绩 is not null
) t