ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

子查询和嵌套查询

2022-09-03 23:31:09  阅读:196  来源: 互联网

标签:studentNo -- 查询 嵌套 studentResult subjectNo WHERE SELECT


-- JAVA第一学年 课程成绩排名前十的学生,并且分数要大于80 的学生信息(学号,姓名,课程名称,分数)

  SELECT s.studentNo, studentName,subjectName,studentResult

  FROM student AS s

  INNER JOIN result AS r

  ON s.studentNo = r.studentNo

  INNER JOIN subject AS sub

  ON r.subjectNo = sub.subjectNo 

  WHERE subjectName = 'JAVA第一学年' AND studentResult >80

  ORDER BY studentResult DESC

  LIMIT 1,10

-- 方式二:使用子查询(由里及外)

-- 查询所有数据结构-1 的学生学号

  SELECT studentNo, subjectNo, studentResult

  FROM result

  WHERE subjectNo = (

  SELECT subjectNo FROM subject

  WHERE subjectName = '数据库结构-1'

  )

  ORDER BY studentResult DESC

  

  -- 分数不小于80分的学生的姓名和学号

  SELECT studentNo, studentName,

  FROM student AS s

  INNER JOIN result AS r

  ON r.studentNo = s.studentNo

  WHERE studentResult >= 80

-- 在这个基础上增加一个科目,高等数学-2

  SELECT studentNo, studentName

  FROM student AS s

  INNER JOIN result AS r

  ON s.studentNo = r.studentNo

  WHERE studentResult >= 80 AND subjectNo = (

  SELECT subjectNo From subject WHERE sbjectName = '高等数学-2'

  )

 

  -- 嵌套方式--

  SElECT studentNo, studentName FROM student WHERE studentNo IN (

    SELECT studentResult FROM result WHERE studentResult>= 80 AND subjectNo =(

      SELECT subjectNo FROM subject WHERE subjectName = '高等数学-2' 

  )

  )

 

标签:studentNo,--,查询,嵌套,studentResult,subjectNo,WHERE,SELECT
来源: https://www.cnblogs.com/gss01/p/16653949.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有