当前位置:网站首页>【每日SQL打卡】DAY 22丨平均售价【难度中等】
【每日SQL打卡】DAY 22丨平均售价【难度中等】
2022-07-29 11:42:00 【不吃西红柿】
难度简单
SQL架构
Table: Prices
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| product_id | int |
| start_date | date |
| end_date | date |
| price | int |
+---------------+---------+
(product_id,start_date,end_date) 是 Prices 表的主键。
Prices 表的每一行表示的是某个产品在一段时期内的价格。
每个产品的对应时间段是不会重叠的,这也意味着同一个产品的价格时段不会出现交叉。Table: UnitsSold
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| product_id | int |
| purchase_date | date |
| units | int |
+---------------+---------+
UnitsSold 表没有主键,它可能包含重复项。
UnitsSold 表的每一行表示的是每种产品的出售日期,单位和产品 id。编写SQL查询以查找每种产品的平均售价。 average_price 应该四舍五入到小数点后两位。 查询结果格式如下例所示:
Prices table:
+------------+------------+------------+--------+
| product_id | start_date | end_date | price |
+------------+------------+------------+--------+
| 1 | 2019-02-17 | 2019-02-28 | 5 |
| 1 | 2019-03-01 | 2019-03-22 | 20 |
| 2 | 2019-02-01 | 2019-02-20 | 15 |
| 2 | 2019-02-21 | 2019-03-31 | 30 |
+------------+------------+------------+--------+
UnitsSold table:
+------------+---------------+-------+
| product_id | purchase_date | units |
+------------+---------------+-------+
| 1 | 2019-02-25 | 100 |
| 1 | 2019-03-01 | 15 |
| 2 | 2019-02-10 | 200 |
| 2 | 2019-03-22 | 30 |
+------------+---------------+-------+
Result table:
+------------+---------------+
| product_id | average_price |
+------------+---------------+
| 1 | 6.96 |
| 2 | 16.96 |
+------------+---------------+
平均售价 = 产品总价 / 销售的产品数量。
产品 1 的平均售价 = ((100 * 5)+(15 * 20) )/ 115 = 6.96
产品 2 的平均售价 = ((200 * 15)+(30 * 30) )/ 230 = 16.96边栏推荐
- Alibaba architects spent a year sorting out the "Lucene advanced document", and you are also a big factory employee!
- 从零开始Blazor Server(3)--添加cookie授权
- DNS协议、ICMP协议、NAT技术
- Watch the open source summit first | quick view of the sub Forum & Activity agenda on July 29
- QML(二):设置自定义窗体
- puzzle(017.5)联动归位
- HMS Core Discovery第16期回顾|与虎墩一起,玩转AI新“声”态
- 大伟 Golang之路
- Dawei gbase8s cursor stability read esql test case
- 如何使用 grep 跨多行查找模式匹配
猜你喜欢

什么是 Kubernetes 自定义资源定义 (CRD)?

考完PMP后有什么益处

微信云托管入门与实践

three.js 报错信息 RGBELoader.js:46 RGBELoader Bad File Format: bad initial token

Based on the flask to write a small shopping mall project

文件上传漏洞

谷歌“消灭” Cookie 计划延至 2024 年

面试官培训课件(非常实用的企业内训课件)

如何对SQuAD1.1数据集进行预处理「详解版」

Why should kubernetes be used in development environments
随机推荐
MarkDown高阶语法手册
一次node文件操作过多排查过程总结
Proficient in audio and video development can really do whatever you want
Summer vacation training week1
Xiaoxiao authorization system V5.0 happy version
多元宇宙:重塑新商业格局
AI全流程开发难题破解之钥
如何使用“COPY –link”加速 Docker 构建和优化缓存
puzzle(017.5)联动归位
Learning with Recoverable Forgetting阅读心得
微信云托管入门与实践
AI model risk assessment Part 2: core content
Deep understanding of c # delegate into the fast lanes
怎么以管理员身份运行cmd?以管理员身份运行cmd方法介绍
力扣sql刷题(四)
共建共享数字世界的根:阿里云打造全面的云原生开源生态
QT's user-defined interface (borderless and movable)
Pangolin库链接库问题
MySql启动、连接sqlog、主从复制、双机热备(开机时)
Similarities and differences of QWidget, qdialog and qmainwindow