【SQL】1407. 排名靠前的旅行者

题目描述

leetcode题目:1407. 排名靠前的旅行者



Code

写法一

先过滤,再连表

sql 复制代码
-- 写法一:先过滤再连表
select name, ifnull(summ, 0) as travelled_distance
from Users
left join(
    select user_id, sum(distance) as summ
    from Rides
    group by user_id
) A
on Users.id = A.user_id
order by summ desc, name asc;

写法二

先连表,再过滤

sql 复制代码
-- 写法二:先连表再过滤
select  name, ifnull(sum(distance), 0) as travelled_distance
from Users U 
left join Rides R
on U.id = R.user_id
group by R.user_id
order by travelled_distance desc, name;
相关推荐
阿坤带你走近大数据3 小时前
SQL里where后面的1=1是干嘛的,走的是什么索引
数据库·sql
阿坤带你走近大数据3 小时前
SQL的执行顺序和书写顺序的介绍
数据库·sql·oracle
Poo_Chai3 小时前
QT emit信号后完整处理流程,包括槽函数响应流程
java·开发语言·数据库
茶本无香4 小时前
Java调用Shell脚本执行SQL数据库操作:从入门到实战
java·sql·shell
这个DBA有点耶4 小时前
从DBA到数据架构师(五):数据架构演进中的技术债务管理
数据库·程序人生·云原生·架构·dba·数据库管理员
Bruce_Liuxiaowei5 小时前
基于微步在线威胁情报的公网 IP 攻击迹象监测:threatbook_query 脚本全解析与 BruceSec 平台整合实践
数据库·tcp/ip·安全·网络安全·智能体
码农颜5 小时前
5.6.2 ⾏级锁死锁
数据库·sql·oracle
ChaHae-In5 小时前
MyBatis动态SQL与MyBatis-Plus高效开发指南
数据库·oracle·mybatis
冰暮流星5 小时前
mysql之分组查询
数据库·mysql
爱编程的小新☆6 小时前
【LeetCode】从递归到 Flood Fill:5 道题吃透 DFS 的选择、回溯与标记
java·算法·leetcode·深度优先·回溯·flood fill