mysql基础练习题 1082.销售分析1 (力扣)

1082.编写解决方案,找出总销售额最高的销售者,如果有并列的,就都展示出来。

题目链接:

https://leetcode.cn/problems/sales-analysis-i/description/

建表插入数据:

sql 复制代码
Create table If Not Exists Product (product_id int, product_name varchar(10), unit_price int)
Create table If Not Exists Sales (seller_id int, product_id int, buyer_id int, sale_date date, quantity int, price int)
Truncate table Product
insert into Product (product_id, product_name, unit_price) values ('1', 'S8', '1000')
insert into Product (product_id, product_name, unit_price) values ('2', 'G4', '800')
insert into Product (product_id, product_name, unit_price) values ('3', 'iPhone', '1400')
Truncate table Sales
insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('1', '1', '1', '2019-01-21', '2', '2000')
insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('1', '2', '2', '2019-02-17', '1', '800')
insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('2', '2', '3', '2019-06-02', '1', '800')
insert into Sales (seller_id, product_id, buyer_id, sale_date, quantity, price) values ('3', '3', '4', '2019-05-13', '2', '2800')

画图分析:

代码实现:

sql 复制代码
with t1 as (
    select seller_id,rank() over (order by sum(price) desc) as rn  from
                 sales group by seller_id
) select seller_id from t1 where t1.rn=1;

总结

sql 复制代码
有并列的要展现出来,可以用rank()或者dense_rank()
序号(排名)函数:
row_number():排序无重复且连续,例如:1,2,3
rank():排序重复且不连续,例如:1,1,3
dense_rank():排序重复且连续,例如:1,1,2
相关推荐
linmengmeng_13142 小时前
【总结】MyBatis-Plus批量插入与清表的正确姿势
java·spring boot·mysql·mybatis
达梦数据3 小时前
DMDRS空间数据类型说明:Oracle、DM8、MySQL空间数据类型映射
数据库·mysql·oracle
lusklusklusk4 小时前
Oracle索引组织表,SQLServer聚集索引,Mysql Innodb表的数据行不是在磁盘上像排队一样严格连续地存放
mysql·postgresql·oracle·sqlserver
螺蛳粉 螺蛳粉6 小时前
mysql的备份与恢复
linux·运维·数据库·mysql
计算机毕设定制辅导-无忧学长7 小时前
《基于SpringBoot的中学教师数字胜任力测评网站的设计与实现》
java·vue.js·spring boot·mysql·中学教师数字胜任力测评网站
guo_wen_qiang7 小时前
mysql中有哪些日志
数据库·mysql
天天喝旺仔9 小时前
MySQL索引优化实战:B+Tree原理、索引失效与覆盖索引调优
数据库·sql·mysql·性能优化
lqg_zone10 小时前
CentOS 7 虚拟机磁盘 I/O 卡顿排查实录:从 iostat 异常到虚拟盘后端故障的完整定位
linux·服务器·mysql·centos
不正经的码狗11 小时前
# Navicat Premium 17 安装使用指南
mysql·navicat premium