【力扣白嫖日记】SQL
前言
练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。
今日题目:
1407.排名靠前的旅行者
表:Users
| 列名 | 类型 |
|---|---|
| id | int |
| name | varchar |
id 是该表中具有唯一值的列。name 是用户名字。
表:Rides
| 列名 | 类型 |
|---|---|
| id | int |
| user_id | int |
| distance | int |
id 是该表中具有唯一值的列。user_id 是本次行程的用户的 id, 而该用户此次行程距离为 distance 。
我那不值一提的想法:
首先梳理表内容,题干给了两张表,第一张用户表,记录了用户id和姓名,第二张旅行表,记录了id,和用户id和距离,其中用户id和第一张表的id一样。其次分析需求,需要报告每个用户的旅行距离,并且有不一样的逻辑判断,那么我们就先满足距离,在满足名字,就是把距离放在order by 的前面一个值。初次之外,对于没有距离的用户,我们还需要显示出来,并标识为0,这里我们使用ifnull判断,如果是空值,择改成0。
我一开是是用name去分组的,但是如果用name分组就忽略了名字一样的情况,就会出现错误,我们应该用表的主键唯一列id进行分组,也就是order by u.id
select u.name,ifnull(sum(r.distance),0) as travelled_distance
from Users u
left join Rides r
on u.id = r.user_id
group by u.name
order by sum(r.distance) desc,u.name
也就是这样:
select u.name,ifnull(sum(r.distance),0) as travelled_distance
from Users u
left join Rides r
on u.id = r.user_id
group by u.id
order by sum(r.distance) desc,u.name
结果:

总结:
能运行就行。
相关文章:
【力扣白嫖日记】SQL
前言 练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。 今日题目: 1407.排名靠前的旅行者 表:Users 列名类型idintnamevarchar id 是该表中具有唯一值的列。name …...
自动化报告pptx-python|高效通过PPT模版制造报告(三)
这是自动化报告学习的第三篇了,前面两篇分别是: 自动化报告的前奏|使用python-pptx操作PPT(一)自动化报告pptx-python|如何将pandas的表格写入PPTX(二)本篇是逼着笔者看到JoStudio 大佬自己写的一个jojo-office 库,基于pptx-python开发成一套试用office软件的依赖,非…...
Linux升级openssh的解决方案
大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...
YOLOv5白皮书-第Y3周:yolov5s.yaml文件解读
YOLOv5白皮书-第Y3周:yolov5s.yaml文件解读 YOLOv5白皮书-第Y3周:yolov5s.yaml文件解读一、前言二、我的环境三、yolov5s.yaml源文件内容四、Parameters五、anchors配置六、backbone七、head八、总结 OLOv5-第Y2周:训练自己的数据集) YOLOv5白皮书-第Y3周:yolov5s.…...
C++ pair+map+set+multimap+multiset+AVL树+红黑树(深度剖析)
文章目录 1. 前言2. 关联式容器3. pair——键值对4. 树形结构的关联式容器4.1 set4.1.1 set 的介绍4.1.2 set 的使用 4.2 map4.2.1 map 的介绍4.2.2 map 的使用 4.3 multiset4.3.1 multiset 的介绍4.3.2 multiset 的使用 4.4 multimap4.4.1 multimap 的介绍4.4.2 multimap 的使…...
指针的学习1
目录 什么是指针? 野指针 造成野指针的原因: 如何避免野指针? 内存和指针 如何理解编址? 指针变量和地址 取地址操作符& 指针变量和解引用操作符 指针变量 如何拆解指针类型? 指针变量的大小 指针变量…...
c++:敲桌子
先输出1-100数字,从100个数字中找到这些特殊数字改为敲桌子。 特殊数字:1.7的倍数 2.十位数上有7 3.个位数上有7 #include<iostream> using namespace std; int main() {for (int i 1; i < 100; i) {if (i / 10 7 || i % 10 7|| i % 7 0)…...
Linux中判断文件系统的方法
文章目录 Linux中判断文件系统的方法1.使用mount命令2.使用blkid命令3.使用file命令4.使用fstab文件5.使用df命令(这个用的比较多)6.使用fsck命令7.使用lsblk命令(推荐-简单好用) Linux中判断文件系统的方法 1.使用mount命令 # 这样查看的只有已经挂载…...
聊聊ClickHouse MergeTree引擎的固定/自适应索引粒度
前言 我们在刚开始学习ClickHouse的MergeTree引擎时,就会发现建表语句的末尾总会有SETTINGS index_granularity 8192这句话(其实不写也可以),表示索引粒度为8192。在每个data part中,索引粒度参数的含义有二…...
20240202在WIN10下使用whisper.cpp
20240202在WIN10下使用whisper.cpp 2024/2/2 14:15 【结论:在Windows10下,确认large模式识别7分钟中文视频,需要83.7284 seconds,需要大概1.5分钟!效率太差!】 83.7284/4200.1993533333333333333333333333…...
【Linux】基本指令(上)
🦄个人主页:修修修也 🎏所属专栏:Linux ⚙️操作环境:Xshell (操作系统:CentOS 7.9 64位) 目录 Xshell快捷键 Linux基本指令 ls指令 pwd指令 cd指令 touch指令 mkdir指令 rmdir指令/rm指令 结语 Xshell快捷键 AltEnter 全屏/取消全屏 Tab 进…...
【DB2】—— 一次关于db2 sqlcode -420 22018的记录
情况描述 在DB2 10.5数据库中执行以下SQL语句: SELECT * FROM aa WHERE aa.ivc_typ IN (213,123,12334,345)其中aa.ivc_typ列的类型为VARCHAR(10) 关于执行会发生以下情况 类型转换:SQL引擎会尝试把IN列表中的整数常量转换为VARCHAR(10)类型…...
账簿和明细账
目录 一. 账簿的意义和种类二. 明细账 \quad 一. 账簿的意义和种类 \quad 账簿是由一定格式、互有联系的账页组成,以审核无误的会计凭证为依据,用来序时地、分类地记录和反映各项经济业务的会计簿籍(或称账本)。设置和登记账簿是会计工作的重…...
C# Onnx GroundingDINO 开放世界目标检测
目录 介绍 效果 模型信息 项目 代码 下载 介绍 地址:https://github.com/IDEA-Research/GroundingDINO Official implementation of the paper "Grounding DINO: Marrying DINO with Grounded Pre-Training for Open-Set Object Detection" 效果 …...
PyCharm / DataSpell 导入WSL2 解析器,实现GPU加速
PyCharm / DataSpell 导入WSL2 解析器的实现 Windows的解析器不好么?设置WSL2和实现GPU加速为PyCharm / DataSpell 设置WSL解析器设置Interpreter Windows的解析器不好么? Windows上的解析器的确很方便,也省去了我们很多的麻烦。但是WSL2的解…...
Android矩阵Matrix裁切setRectToRect拉伸Bitmap替代Bitmap.createScaledBitmap缩放,Kotlin
Android矩阵Matrix裁切setRectToRect拉伸Bitmap替代Bitmap.createScaledBitmap缩放,Kotlin class MyImageView : AppCompatImageView {private var mSrcBmp: Bitmap? nullprivate var testIV: ImageView? nullconstructor(ctx: Context, attrs: AttributeSet) :…...
TensorFlow2实战-系列教程11:RNN文本分类3
🧡💛💚TensorFlow2实战-系列教程 总目录 有任何问题欢迎在下面留言 本篇文章的代码运行界面均在Jupyter Notebook中进行 本篇文章配套的代码资源已经上传 6、构建训练数据 所有的输入样本必须都是相同shape(文本长度,…...
故障诊断 | 一文解决,RF随机森林的故障诊断(Matlab)
效果一览 文章概述 故障诊断 | 一文解决,RF随机森林的故障诊断(Matlab) 模型描述 随机森林(Random Forest)是一种集成学习(Ensemble Learning)方法,常用于解决分类和回归问题。它由多个决策树组成,每个决策树都独立地对数据进行训练,并且最终的预测结果是由所有决策…...
DAO设计模式
概念:DAO(Data Access Object) 数据库访问对象,**面向数据库SQL操作**的封装。 (一)场景 问题分析 在实际开发中,针对一张表的复杂业务功能通常需要和表交互多次(比如转账)。如果每次针对表的…...
【Midjourney】新手指南:参数设置
1.--aspect 或 --ar 用于设置图片长宽比,例如 --ar 16:9就是设置图片宽为16,高为9 2.--chaos 用于设置躁点,噪点值越高随机性越大,取值为0到100,例如 --chaos 50 3.--turbo 覆盖seetings的设置并启用极速模式生成…...
OpenClaw多任务调度:千问3.5-9B并行处理技巧
OpenClaw多任务调度:千问3.5-9B并行处理技巧 1. 为什么需要多任务调度 去年冬天,我接手了一个数据密集型项目,需要同时处理数据分析、邮件生成和文件格式转换三项任务。最初尝试用传统脚本串行执行,结果发现总耗时超过8小时——…...
企业微信外部群自动化回复避坑指南:RPA如何稳定接管WebSocket连接不断线
企业微信外部群自动化回复的WebSocket稳定性实战:从心跳包到风控规避 当你的RPA机器人第三次在凌晨2点因为WebSocket连接断开而停止响应时,技术负责人发来的质问消息比企业微信的报警通知更让人心惊。这不是简单的技术故障,而是关乎业务流程连…...
springboot+deepseek实现AI接口调用
deepseek注册流程就不复述了,需要的小伙伴可以留言,单独指导。需要调用deepseek大模型接口的来看看了,直接上代码DsControllerpackage com.example.demo.controller;import com.example.demo.service.DsService; import org.springframework.…...
Filter下固定块半导体设备PP精密加工案例 | 莱图加工程师实录
本次案例来自一家半导体微电子设备制造企业的委托加工需求,零件为Filter下固定块,作为莱图加承接的半导体设备零件加工项目之一,该零件在湿法工艺设备、晶圆清洗设备或化学液过滤系统中承担Filter组件的下部固定与支撑功能。Filter下固定块&a…...
OpenClaw多通道管理:千问3.5-9B同时服务飞书与钉钉机器人
OpenClaw多通道管理:千问3.5-9B同时服务飞书与钉钉机器人 1. 为什么需要多通道管理? 去年我接手了一个跨部门协作项目,团队同时使用飞书和钉钉两种沟通工具。每次需要查询数据或生成报告时,成员们要么在飞书群里我,要…...
保姆级教程:手把手教你将中国土地利用栅格数据(GRID/TIFF)转换成WRF能用的二进制格式(含GDAL和index文件配置避坑指南)
从GRID到二进制:WRF土地利用数据转换全流程实战指南 当你在深夜盯着屏幕,反复检查那些令人头疼的GDAL命令和index文件参数时,是否曾希望有人能一步步带你走出这个迷宫?作为WRF模拟中最为基础却又最容易出错的环节,土地…...
Cocos Creator 3.x 高维护性打字机对话系统设计与实现
在 Cocos Creator 项目中,对话系统是 RPG、冒险、视觉小说等类型游戏的核心功能之一。如何设计一个维护性高、可扩展、策划友好、支持存档的打字机(Typewriter)系统,是许多开发者面临的挑战。 该系统采用组件化 配置化 JSON 数…...
【渗透工具】Venom多级代理实战:从零构建内网渗透通道
1. Venom工具入门:多级代理的核心价值 第一次接触Venom是在去年的一次内网渗透项目中。当时客户的内网结构复杂,常规代理工具难以穿透多层网络,直到同事推荐了这个用Go语言开发的神器。简单来说,Venom就像个数字隧道挖掘机&#x…...
数学建模算法案例精讲500篇-【自动驾驶】自动驾驶中的决策规划算法概述(代码篇第一篇:全局路径规划+行为决策)
目录 一、前言:代码篇核心定位与环境说明 1.1 运行环境说明 1.2 代码设计思路 二、A*算法代码实现(全局路径规划主流) 2.1 算法核心回顾(对应理论篇2.2节) 2.2 完整MATLAB代码实现 2.3 代码说明与调试技巧 2.3.1 代码结构对应理论 2.3.2 调试技巧(工程适配重点)…...
Photoshop+ComfyUI联动实战:SD-PPP插件5分钟配置指南(附常见错误排查)
PhotoshopComfyUI联动实战:SD-PPP插件5分钟配置指南(附常见错误排查) 在数字艺术创作领域,效率与创意的平衡一直是设计师们的核心诉求。当Adobe Photoshop遇上ComfyUI的AI绘画能力,SD-PPP插件就像一位技艺精湛的翻译官…...
