高频SQL50题

知识点

1.查询值为null的数据(常用在外连接上),用 is null

2.round(数,保留位数),四舍五入保留机会小数

3.ifnull(null值,替换的值),将null值替换为xx值

4.sum()求和

5.case when(xx=xx)then 1 else 0 end,如果值为true返回1,值为false返回0

6.判断奇数,id % 2 = 1,直接写在where条件里面即可

题目思路

1280

1.观察数据,需要查出没有考试的科目的数据,仅Students表和Exam表关联无法查出全部科目的数据,所以使用笛卡尔积将Students与Subjects关联,获取学生与科目的所有情况

2.将关联表与Exam表外连接,就会获取到参加考试和未参加考试科目的学生考试集合

3.group by分组统计考试次数(结果集包含什么字段,group by对那几个字段分组),order by 进行排序(group by与order by多条件用","隔开)

570

1.通过子查询,查询出来managerId>=5的managerId

2.然后获取子表managerId = 父表Id的字段

1934

连接时,那个作为主表,副表的数据向谁合并。在写这道sql时我以Confirmations作为主表,所以我就少了user_id = 6的数据

相关推荐
重生之小比特11 分钟前
【C++进阶】02 Linux基本指令
java·数据库·c++
Omics Pro12 分钟前
00后大3休学创业!AI虚拟细胞
大数据·数据库·人工智能·算法·机器学习·自然语言处理
梦想画家24 分钟前
SQLMesh 模型类型详解(一):EMBEDDED——不建表的共享逻辑
数据库·数据挖掘·sqlmesh
ao-weilai25 分钟前
MySQL数据库:数据类型
android·数据库·mysql
梦想画家36 分钟前
SQLMesh 模型类型详解(三):MANAGED——把数据刷新外包给引擎
数据库·数据开发·sqlmesh
DingYuan10140 分钟前
Django模板继承
数据库·sqlite
Mortalbreeze41 分钟前
MySQL 基础篇(四):表的约束
linux·服务器·数据库·mysql
阳光九叶草LXGZXJ44 分钟前
达梦数据库-学习-71-存过执行过程中重建存过影响验证
linux·运维·数据库·sql·学习
傲世仙尊1 小时前
MySQL上手-库与表的操作编码校验集与备份还原
数据库·mysql
志栋智能2 小时前
安全超自动化如何支持快速安全扩容?
运维·服务器·数据库·架构·自动化