力扣数据库题库学习(4.22日)

577. 员工奖金

问题链接
问题图片

思路分析

Employee表与Bonus表通过empId字段可以连接,需求是查出奖金少于1000的员工名和奖金值。
这里奖金少于1000的情况就是没有奖金+有奖金但少于1000

这里我给出的解决方案就是使用左连接,将Employee表作为左表,连接Bonus表,对于没有bonus字段的情况,两个表连接之后生成的临时表就会用null填充。然后使用筛选条件,bonus为null或bonus小于1000。

成功提交的sql语句如下:

使用左连接+筛选条件

SELECT e.name,b.bonus FROM Employee e
LEFT JOIN Bonus b ON e.empId=b.empId
WHERE b.bonus<1000 OR b.bonus IS NULL
;

运行成功,结果如下

在这里插入图片描述

584. 寻找用户推荐人


问题链接
问题图片

思路分析

需求: 没有被 id = 2 的客户 推荐 的客户的姓名
那么这个筛选条件= referee_id不为2【referee_id!=2 or referee_id is null】
这个非常简单,直接使用where语句即可
已经成功提交的sql语句如下:

where筛选数据

SELECT name FROM Customer WHERE referee_id!=2 OR referee_id IS NULL;

586. 订单最多的客户

问题链接
问题图片

思路分析

我们来看题目的要求:找到下单最多的客户,看示例可以知道,我们最后的结果是获取到下单最多客户的customer_number字段。
这里的关键点就是如何获取到每个顾客下单的数量。这个方法在sql内解决方案就是按照customer_number分组,然后计算每个分组的记录数,即为单个顾客的订单量,最后将数据倒排,取出第一个数据就可以了。
下面我们来实现,代码如下

GROUP BY分组 ORDER BY 排序 LIMIT 1

SELECT customer_number FROM Orders
GROUP BY customer_number
ORDER BY COUNT(*) DESC
LIMIT 1;

596. 超过5名学生的课

问题链接
问题描述

思路分析

要求找到班级的名称,且班级的学生数>=5
我们来看这个学生表,是由每一个学生作为记录的,每一个学生对应一个班级。解决这个问题的关键就是统计出来每个班级的学生数,也就是说,将表内数据按照班级分组,统计出不同组内学生的数量【等于组内记录数】。
这么一说,其实方案就很简单了,先根据班级分组,然后统计分组记录,最后筛选出记录数>=5的班级名称即可。
看我的代码

HAVING对分组过滤

SELECT class FROM Courses
GROUP BY class
HAVING COUNT(*)>=5;

添加点知识,关于where与having的区别
HAVING 子句用于在对结果集进行分组后进行过滤,类似于 WHERE 子句对原始数据进行过滤

  1. WHERE 子句在分组之前过滤数据,而 HAVING 子句在分组之后过滤数据。
  2. WHERE 子句对行进行过滤,而 HAVING 子句对分组进行过滤。

607. 销售员

问题链接
问题图片

思路分析

找出没有任何与名为 “RED” 的公司相关的订单的所有销售人员的姓名
分析一下需求,没有任何与red公司相关的销售人员名单。这个我们一张一张表来看关联性:
SalesPerson表内没有什么与red公司直接关联的数据,Company表内有RED相关的数据,即com_id为1的这条记录; Orders表内也有相关的数据,com_id为1的都是相关的数据。
我的思路很简单,
代码很简单,如下:

-- 找到com_id为1的sales_id ==>这个提交有问题,必须使用Company 表name 过滤,而不是直接使用com_id过滤
-- 查询SalesPerson并根据sales_id过滤
SELECT name FROM SalesPerson WHERE sales_id NOT IN
(SELECT sales_id FROM Orders INNER JOIN Company ON Orders.com_id = Company.com_id WHERE name="RED");

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/2099.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

arm架构,django4.2.7适配达梦8数据库

【Python相关包版本信息】 Django 4.2.7 django-dmPython 3.1.7 dmPython 2.5.5 【达梦数据库版本】 DM Database Server 64 V8 DB Version: 0x7000c 适配过程中发现的问题如下&#xff1a; 错误一&#xff1a;d…

解决IDEA调试方法进不去与数据看不到的问题

问题场景&#xff1a; 最近使用IDEA调试的时候&#xff0c;发现JDK有些方法**步进(F7)**无法进入&#xff0c;有些类的字段值也看不到。 原因分析&#xff1a; 提示&#xff1a;IDEA为了提升调试效率&#xff0c;以及突出调试数据的显示效果&#xff0c;会默认帮我们做一些筛选…

PAT——1007素数对猜想(C++)

问题描述&#xff1a; 让我们定义为&#xff1a;​&#xff0c;其中​是第i个素数。显然有d1​1&#xff0c;且对于n>1有​是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。 现给定任意正整数 N (<10^5)&#xff0c;请计算不超过 N 的满足猜想的素数对的个…

# 从浅入深 学习 SpringCloud 微服务架构(四)Ribbon

从浅入深 学习 SpringCloud 微服务架构&#xff08;四&#xff09;Ribbon 段子手168 一、ribbon 概述以及基于 ribbon 的远程调用。 1、ribbon 概述&#xff1a; Ribbon 是 Netflixfa 发布的一个负载均衡器,有助于控制 HTTP 和 TCP客户端行为。 在 SpringCloud 中 Eureka …

Flutter 插件站新升级: 加入优秀 GitHub 开源项目

Flutter 插件站新升级: 加入优秀 GitHub 开源项目 视频 https://youtu.be/qa49W6FaDGs https://www.bilibili.com/video/BV1L1421o7fV/ 前言 原文 https://ducafecat.com/blog/flutter-awesome-github-repo-download 这几天晚上抽空把 Flutter 插件站升级&#xff0c;现在支…

qt实现不定数量的按钮向前向后移动展示

按钮模拟移动 引言示例代码第一种思路开发环境代码结构实现代码第二种思路开发环境实现代码第三种思路开发环境实现代码总结引言 此文主要记录用qt实现按钮的移动,具体效果如下: 模拟按钮移动效果 示例代码 本文记录了三种实现方式。 第一种 思路 用动态数组vector存放创…

【python项目推荐】键盘监控--统计打字频率

原文&#xff1a;https://greptime.com/blogs/2024-03-19-keyboard-monitoring 代码&#xff1a;https://github.com/GreptimeTeam/demo-scene/tree/main/keyboard-monitor 项目简介 该项目实现了打字频率统计及可视化功能。 主要使用的库 pynput&#xff1a;允许您控制和监…

【多线程】synchronized原理 | 锁升级| 锁消除 | 锁粗化 | 信号量 | CountDownLatch

文章目录 一、synchronized原理synchronized属于哪种锁&#xff1f; 1.锁升级偏向锁&#xff1a; 2.锁消除3.锁粗化锁的粒度 二、信号量 Semaphore三、CountDownLatch1.await方法2.countDown方法 一、synchronized原理 synchronized属于哪种锁&#xff1f; ​ 在初始情况下&am…

【oceanbase】安装ocp,ocp部署oceanbase

https://www.oceanbase.com/docs/common-ocp-1000000000584989 资源 iphostnamecpumem组件192.168.0.71obnode-000-071816oceanbase-ce192.168.0.72obnode-000-072816oceanbase-ce192.168.0.73obnode-000-073816oceanbase-ce192.168.0.74obproxy-000-07424obproxy-ce192.168.0…

【Java EE】网络初识

目录 1.网络发展史 2.局域网LAN 2.1组建方式 2.1.1基于网线直连 2.1.2基于集线器组建 2.1.3基于交换机组建 2.1.4基于交换机和路由器组建 3.广域网WAN 4.网络通信基础 4.1 IP地址 4.1.1概念 4.1.2格式 4.1.3端口号 4.1.3.1概念 4.1.3.2格式 4.2认识协议 4.2.1概…

Qt 跨平台开发的一丢丢总结

Qt 跨平台开发 文章目录 Qt 跨平台开发摘要第一 \ & /第二 神奇{不能换行显示第三 预处理宏 关键字&#xff1a; Qt、 win、 linux、 lib、 MSVC 摘要 最近一直在琢磨Qt跨平台开发的问题&#xff0c;缘由有以下几个&#xff0c; 首先第一个&#xff0c;我们目前开发…

医院敏感文件交互 如何保障安全和效率?

医院会产生大量的敏感文件&#xff0c;这些敏感文件交互时&#xff0c;都需要使用特殊的手段&#xff0c;来保障数据的安全性。 医院的敏感数据主要包括以下几类&#xff1a; 1、患者基本信息&#xff1a;包括患者的姓名、身份证号码、户籍地或现住址、联系方式、文化程度、既…

【数据结构】二叉树链式结构的实现《遍历,实现》(题库+解析+源码)

前言 二叉树的学习离不开对堆的理解&#xff0c;这是上篇堆的传送门 http://t.csdnimg.cn/F6Jp3 1.二叉树链式结构的实现 1.1 前置说明 在学习二叉树的基本操作前&#xff0c;需先要创建一棵二叉树&#xff0c;然后才能学习其相关的基本操作。由于现在大家对二 叉树结构掌握还…

【LLM】向量知识库

文章目录 认识向量知识库向量Embeddings向量数据库向量数据库的作用向量数据库与传统数据库的区别 Embedding API使用公有Embedding API自定义一个Embeedding API 常见文本数据的预处理搭建并使用向量数据库思考向量数据库在LLM中的价值体现向量的妙用&#xff0c;可行&#xf…

gcc,软硬链接和制作动静态库

gcc的操作 预处理 gcc -E file.c -o file.i -E选项表示预处理完就停下来&#xff0c;在编译时-o file.i可以省略&#xff0c;编译器会默认生成同名的.i文件 编译 gcc -S file.i -o file.s -s表示生成完汇编码就停下来&#xff0c;在编译时-o file.s可以省略&#xff0c;编…

kaggle电子邮件分类xgboost建模可视化模型评估混淆矩阵范例

目录 概述 依赖环境 代码解读 库的导入 数据读取 扇形图可视化统计 词云图可视化 分布条形图可视化 数据预处理 划分数据集 模型训练 模型预测和评估 ROC曲线评估 混淆矩阵评估 多维度交叉评估 配套源码和数据集 xgboost邮件分类配套数据集和源码下载地址 概述…

DenseDiffusion:Dense Text-to-Image Generation with Attention Modulation

1 研究目的 该文献的研究目的主要是&#xff1a; 探讨一种更为广泛的调制方法&#xff0c;通过设计多个正则化项来优化图像合成过程中的空间控制。论文的大致思想是&#xff0c;在现有的基于数据驱动的图像合成系统基础上&#xff0c;通过引入更复杂的调制策略&#xff0c;实现…

pip下载包opencv出错(报错failed building wheel for opencv-python解决方法)

文章目录 1 报错2 原因3 解决方法参考 1 报错 ERROR: Could not build wheels for opencv-python, which is required to install pypr2 原因 版本不兼容的问题,当使用pip install opencv-python命令安装的是最新版本&#xff0c;当前python版本不支持。需要安装当前版本pyth…

认识产品经理

一、合格的产品经理 1、什么是产品 解决某个问题的东西&#xff0c;称为产品 键盘可以打字&#xff0c;想喝水了可以用水壶&#xff0c;在超市想找一款扫把会有导购员服务 产品有颜色、大小等等区别&#xff0c;也有有形和无形的区别 2、什么是产品经理 想清楚怎么设计产品…

Leetcode - 周赛394

目录 一&#xff0c;3120. 统计特殊字母的数量 I 二&#xff0c;3121. 统计特殊字母的数量 II 三&#xff0c;3122. 使矩阵满足条件的最少操作次数 四&#xff0c;3123. 最短路径中的边 一&#xff0c;3120. 统计特殊字母的数量 I 本题就是统计有多少个字母的大小写同时出现…