select * from Student select * from Course select * from Grade
update grade set GradeCount=(select avg(GradeCount) from Grade where CourseID=2) where studentID=(select SID from Student where SName='b')
and courseID=2 2是CourseId表示数学
update grade set GradeCount=(select avg(GradeCount) from Grade where CourseID=2) where studentID=(select SID from Student where SName='b')
and courseID=2 2是CourseId表示数学
有3个表,学生表Student(StudentId,StudentName)、课程表Course(CourseId,CourseName)、成绩表Grade(StudentId,CourseId,Grade)。写出“将所有同学的数学成绩的平均分改成张三同学的数学成绩的平均分”的Sql语句。
-----------------------------------
应该是将所有同学的数学成绩平均分改成张三的数学成绩吧.如果是这样的话
update Grade
set grade=a.avg_grade
from grade g join Student s
on g.studentID=s.studentID and s.studentName='zhangsan'
join Course c on g.couseID=c.couseID and c.couseName='shuxue'
join (select avg(grade) as avg_grade from garde where couseID in(select couseID from couse where couseName='shuxue')) a-------没有测试过---------
好象太复杂了点,老大在旁边,不敢在论坛逗留