什么是子查询?

如题所述

子查询就是查询语句的嵌套,即在外部查询中还包含一个内部查询。当一个查询是另一个查询的条件时,称之为子查询。子查询可以使用几个简单命令构造功能强大的复合命令,子查询最常用于SELECT语句的where子句中。另外,子查询可作为一个临时表来使用,完成更为复杂表联结数据的检索功能。子查询类型1.SOHSOHwhere类型子查询用major.sql脚本初始化数据库建表环境,以下语句就是一个标准的子查询例子,其功能是检索出主修学分大于国际贸易专业学分的专业。

SELECT*FROMMajorwheremajorTotalCredit>(SELECTmajorTotalCreditFROMMajorWHEREmajorName='国际贸易')where语句后面条件的括号内为一个子查询:SELECTmajorTotalCreditFROMMajorwheremajorName='国际贸易'查询出来的结果将作为外部查询的条件参数,如本子查询检索到值为196,则外部查询相当于如下语句:SELECT*FROMMajorwheremajorTotalCredit>196外部查询的结果值则为整个查询语句的最终检索数据集,如图子查询操作1所示。

子查询操作1

66037788712

2.from类型子查询用student_info.sql脚本初始化数据库建表环境,如何实现从学生表(student_info)查询出有不及格科目学生的平均成绩?分两步可实现上面的功能要求。

((1)查询出有不及格科目的学生。

select*fromstudent_infowheremath<60orchinese<60ormusic<60orhistory<60(2)在第((1)步检索出的数据中查询每个学生的平均成绩(总成绩/4),即把第((1)步的查询结果看作一个临时数据表,再从这个临时表中检索出符合要求的数据。在这种类型的检索中,子查询跟在from的后面。

selectsn

温馨提示:答案为网友推荐,仅供参考
相似回答