java吧 关注:1,255,332贴子:12,744,184
  • 5回复贴,共1

这个sql怎么改

只看楼主收藏回复

表如下
Student(id,Sname,Sage,Ssex) 学生表
Course(cid,Cname,Tid) 课程表
SC(id,cid,score) 成绩表
Teacher(Tid,Tname) 教师表


IP属地:山东1楼2019-02-16 18:34回复
    把“SC”表中“叶平”老师教的课的成绩都更改为此课程的平均成绩;


    IP属地:山东2楼2019-02-16 18:34
    回复
      我写的sql
      UPDATE sc SET score=
      (SELECT AVG(score) FROM sc sc2,course,teacher WHERE
      teacher.Tname='叶平' AND teacher.Tid=course.Tid AND
      course.Cid=sc2.Cid) WHERE cid=(SELECT DISTINCT(sc3.Cid) FROM sc sc3,course,teacher WHERE
      teacher.Tname='叶平' AND teacher.Tid=course.Tid AND
      course.Cid=sc3.Cid)


      IP属地:山东3楼2019-02-16 18:34
      回复
        错误如下
        You can't specify target table 'sc' for update in FROM clause


        IP属地:山东4楼2019-02-16 18:34
        回复
          下一个


          IP属地:广东来自iPhone客户端5楼2019-02-16 18:59
          回复
            你不是工作了吗


            IP属地:安徽来自Android客户端6楼2019-02-16 22:46
            回复