请选择 进入手机版 | 继续访问电脑版
楼主: 时光人
503 0

mysql子查询 [推广有奖]

  • 3关注
  • 34粉丝

院士

23%

还不是VIP/贵宾

-

威望
1
论坛币
26906 个
通用积分
428.4516
学术水平
95 点
热心指数
109 点
信用等级
91 点
经验
39960 点
帖子
1629
精华
3
在线时间
579 小时
注册时间
2019-2-25
最后登录
2023-4-26

时光人 学生认证  发表于 2019-10-12 09:08:41 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

CDA网校:数据科学、人工智能从业者的在线大学。

数据科学(Python/R/Julia)数据分析、机器学习、深度学习


一、mysql子查询基本知识

子查询就是在原有的查询语句中,嵌入新的查询,来得到我们想要的结果集。

子查询一般分为:where型子查询、from型子查询和exists型子查询。

1.where型子查询:将内层查询结果当做外层查询的比较条件。

select 列1,列2,...,列n from 表名 where 列i =/in (select 列1,列2,...,列n from 表名 where ...);

2.from型子查询:把内层的查询结果当成临时表,供外层sql再次查询。查询结果集可以当成表看待。临时表要使用一个别名。

select 列1,列2,...,列n from (select 列1,列2,...,列n from 表名 where ...) as 表别名 where ....;

3.exists型子查询:把外层sql的结果,拿到内层sql去测试,如果内层的sql成立,则该行取出。内层查询是exists后的查询。

select 列1,列2,...,列n from 表名 where exists (select 列1,列2,...,列n from 表名 where ...);

二、查询实例

下图为成绩表和班级表数据。

1.查询成绩表中数学成绩最高的学生信息;

2.查询成绩表中各个班级的最高总成绩;

3.根据成绩表和班级表,找出成绩表中缺失成绩的班级;


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:MySQL sql 子查询 Select python

您需要登录后才可以回帖 登录 | 我要注册

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2023-9-23 05:29