mysql嵌套查询获取语法错误

mysql嵌套查询获取语法错误,mysql,Mysql,我的问题是: 总分最高的学生注册号 学生注册号是谁 被认为是最坏的科目 存在一个带有属性(注册号、科目、分数)的表“学生” 共有8门课程,每个学生选修全部8门课程。因此,该表由每个学生8条记录组成。学生人数取决于学生人数。例如:10名学生,总记录数=8*10=80 以下是我的疑问。请有人纠正它的错误。谢谢 1)"select A.reg_id from (select S.reg_id, sum(S.marks) as total from students S group by S.reg_i

我的问题是:

  • 总分最高的学生注册号
  • 学生注册号是谁 被认为是最坏的科目
  • 存在一个带有属性(注册号、科目、分数)的表“学生”

    共有8门课程,每个学生选修全部8门课程。因此,该表由每个学生8条记录组成。学生人数取决于学生人数。例如:10名学生,总记录数=8*10=80

    以下是我的疑问。请有人纠正它的错误。谢谢

    1)"select A.reg_id from (select S.reg_id, sum(S.marks) as total from students S group by S.reg_id) as A where A.total=(select max(C.total) from (select S1.reg_id,sum(S1.marks) as total from students S1 group by S1.reg_id) as C);"
    
    2)"select A.reg_id from (select S.reg_id, sum(S.marks) as total from students S group by S.reg_id) as A where A.total=(select max(A.total) from A);"`
    
    错误消息:

    ERROR 1064 (HY000) at line 1: You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'select S.reg_id, sum(S.marks) as total from
    students S group by
    Student's reg_id who took highest total marks : 
     Students' reg_ids who took highest for subject vice : reg_id subject max(s.marks) id1 Buddhist 99 id1 computer 81 id1 English 95 id5 History 82 id1 Literature 95 id1 Maths 97 id1 Sinhala 85 id9 Social 90
    

    第二,我得到了答案,但没有正确的值。

    您的更改如下:

    select A.reg_id from (select S.reg_id, sum(S.marks) as total from students S group by S.reg_id) as A where A.total IN (select max(C.total) from (select S1.reg_id,sum(S1.marks) as total from students S1 group by S1.reg_id) as C);
    
    select A.reg_id from (select S.reg_id, sum(S.marks) as total from students S group by S.reg_id) as A where A.total IN (select max(A.total) from A);
    
    你可以试试这个

          Select reg_id, max (total) as maxtotal from (
            select reg_id, sum(marks) as total from students S    group by reg_id ) t
    

    请在第1行发布errormessageERROR 1064(HY000):您的SQL语法有错误。查看与您的MySQL服务器版本对应的手册,了解使用near“按总分最高的学生注册id从学生组中选择S.reg\U id,sum(S.marks)作为总计”的正确语法:科目vice:reg\U id
    科目max(S.marks)id1佛教徒99 id1计算机81 id1英语95 id5历史82 id1文学95 id1数学97 id1僧伽罗85 id9社会90第二个,我得到了答案,但值错误:(在第一个查询中,我想你必须有一个
    更多之前
    )(选择S.reg_id,
    嵌套查询非常复杂