【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;
相关推荐
CoderYanger6 分钟前
B.双指针——3194. 最小元素和最大元素的最小平均值
java·开发语言·数据结构·算法·leetcode·职场和发展·1024程序员节
Albert Tan1 小时前
Oracle EBS R12.2.14 清理FND_LOBS并释放磁盘空间
数据库·oracle
L.EscaRC1 小时前
图数据库Neo4j原理与运用
数据库·oracle·neo4j
知己80801 小时前
docker搭建图数据库neo4j
数据库·docker·neo4j
TDengine (老段)1 小时前
什么是 TDengine IDMP?
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
谅望者1 小时前
数据分析笔记08:Python编程基础-数据类型与变量
数据库·笔记·python·数据分析·概率论
Boilermaker19921 小时前
【MySQL】备份与恢复
数据库·mysql
q***7481 小时前
数据库高安全—openGauss安全整体架构&安全认证
数据库·安全·架构
l***37092 小时前
redis info 详解
数据库·redis·缓存
小蜗牛爱远行2 小时前
mysql导入中文乱码问题
数据库·mysql