【力扣刷题日记】1082.销售分析I

前言

练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。

今日题目:

1082.销售分析I

表:Person

列名 类型
product_id int
product_name varchar
unit_price int

product_id 是这个表的主键(具有唯一值的列)。

该表的每一行显示每个产品的名称和价格。

表:Sales

列名 类型
seller_id int
product_id int
buyer_id int
sale_date date
quantity int
price int

这个表它可以有重复的行。 product_id 是 Product 表的外键(reference 列)。

该表的每一行包含关于一个销售的一些信息。


我那不值一提的想法:

  • 首先梳理表内容,题干一共给了一张产品表,记录了产品id,产品名,单价,一张销售表,记录了销售id,产品id,购买者id,销售日期,销售数量,销售价格。
  • 其次分析需求,需要找到总销售额最高的销售者,如果并列,一同显示。
  • 我们首先需要计算,每个销售id的销售总金额,并建立临时表
  • 其次查询这张表中的seller_id,条件就是这张表的all_price = 这张表的max(all_price) 得到最终结果
sql 复制代码
with all_price as (
select seller_id,sum(price) as all_price
from Sales
group by seller_id
)

select seller_id
from all_price
where all_price = 
(select max(all_price)
from all_price)

结果:


总结:

能运行就行。


相关推荐
??tobenewyorker1 小时前
力扣打卡第二十一天 中后遍历+中前遍历 构造二叉树
数据结构·c++·算法·leetcode
时序数据说1 小时前
为什么时序数据库IoTDB选择Java作为开发语言
java·大数据·开发语言·数据库·物联网·时序数据库·iotdb
戒不掉的伤怀2 小时前
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
服务器·数据库·mysql
cv高级工程师YKY2 小时前
服务器 - - QPS与TPS介绍
数据库
nbsaas-boot2 小时前
高可扩展属性建模设计:架构师的全局思考与落地方案
数据库
爱上语文2 小时前
Redis基础(5):Redis的Java客户端
java·开发语言·数据库·redis·后端
陈敬雷-充电了么-CEO兼CTO3 小时前
推荐算法系统系列>推荐数据仓库集市的ETL数据处理
大数据·数据库·数据仓库·数据挖掘·数据分析·etl·推荐算法
MeshddY3 小时前
(超详细)数据库项目初体验:使用C语言连接数据库完成短地址服务(本地运行版)
c语言·数据库·单片机
wuxinyan1233 小时前
Java面试题033:一文深入了解MySQL(5)
java·数据库·mysql·面试
萧曵 丶3 小时前
Spring @TransactionalEventListener
java·数据库·spring·事务·transactional·异步