Mysql子查询

2023-12-23 20:47:06
含义:
出现在其他语句中的 select 语句,称为子查询或内查询;外部的查询语句,称为主查询或外查询
分类:
按子查询出现的位置:
from 后面:支持表子查询
where :支持标量子查询,列子查询
使用:

现有如下表

1. 查询身高最高的学生 (表量子查询)

-- 在where后面使用标量子查询(一列一行)
SELECT * FROM student WHERE height =(SELECT MAX(height) FROM student)

2.查询谁的身高等于特定值(列子查询)

-- 在where 后面 使用列子查询(一列多行)
SELECT * FROM student WHERE height IN( SELECT height FROM student WHERE height IN(1.88,1.87))

3.查询男生和女生的人数谁大于等于2(表子查询)

思路:先将男生女生分组成临时的表统计人数 然后再用条件语句显示人数大于2的性别

-- 在from后面 使用了表子查询(多行多列),把子查询的结果当作另一个表的数据来源
SELECT * FROM (SELECT COUNT(*)c,gender FROM student GROUP BY gender)t
WHERE t.c>=2

文章来源:https://blog.csdn.net/2303_77522514/article/details/135166664
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。