首页 > 数据库技术 > 详细

mysql 子查询

时间:2021-07-11 14:24:08      阅读:21      评论:0      收藏:0      [点我收藏+]

实例

SELECT
    * 
FROM
    student 
WHERE
    class_id IN ( SELECT id FROM class WHERE id = 2 );
+----+--------+------+------+----------+--------+
| id | name   | sex  | age  | class_id | status |
+----+--------+------+------+----------+--------+
|  4 | 小红   | 女   |   23 |        2 |      1 |
|  5 | 小花   | 女   |   19 |        2 |      1 |
+----+--------+------+------+----------+--------+
2 rows in set (0.00 sec)

实例

select * from student where class_id < (select id from class where id = 2);
+----+--------+------+------+----------+--------+
| id | name   | sex  | age  | class_id | status |
+----+--------+------+------+----------+--------+
|  1 | 张三   | 男   |   18 |        1 |      1 |
|  2 | 王五   | 男   |   20 |        1 |      1 |
|  3 | 李四   | 男   |   20 |        1 |      1 |
+----+--------+------+------+----------+--------+
3 rows in set (0.00 sec)

实例

select * from student where class_id = (select id from class where id = 2);
+----+--------+------+------+----------+--------+
| id | name   | sex  | age  | class_id | status |
+----+--------+------+------+----------+--------+
|  4 | 小红   | 女   |   23 |        2 |      1 |
|  5 | 小花   | 女   |   19 |        2 |      1 |
+----+--------+------+------+----------+--------+
2 rows in set (0.00 sec)

实例

SELECT
    class.`id`,
    class.`name`,
    ( SELECT count( * ) FROM student WHERE student.`class_id` = class.`id` ) AS 学生数 
FROM
    class;
+------+---------+-----------+
| id   | name    | 学生数    |
+------+---------+-----------+
|    1 | 班级1   |         3 |
|    2 | 班级2   |         2 |
|    3 | 班级3   |         2 |
+------+---------+-----------+
3 rows in set (0.00 sec)

mysql 子查询

原文:https://www.cnblogs.com/hu308830232/p/14998366.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!