【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;
相关推荐
XDHCOM18 小时前
ORA-32484重复列名错误,ORACLE数据库CYCLE子句故障修复与远程处理方案
数据库·oracle
翻斗包菜19 小时前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
呆瑜nuage19 小时前
MySQL表约束详解:8大核心约束实战指南
数据库·mysql
liliangcsdn19 小时前
Agent Memory智能体记忆系统的示例分析
数据库·人工智能·全文检索
那个失眠的夜19 小时前
Mybatis延迟加载策略
xml·java·数据库·maven·mybatis
Rick199319 小时前
SQL 执行流程
数据库·sql
M--Y19 小时前
Redis常用数据类型
数据结构·数据库·redis
猿小喵20 小时前
MySQL慢查询分析与处理-第二篇
数据库·mysql·性能优化
Ricky111zzz20 小时前
leetcode学python记录1
python·算法·leetcode·职场和发展
Y0011123620 小时前
MySQL-进阶
开发语言·数据库·sql·mysql