首页 > 其他分享 >1251. 平均售价

1251. 平均售价

时间:2023-12-21 16:35:00浏览次数:29  
标签:02 product 2019 +---------------+---------+ 1251 date 平均 id 售价

1.题目介绍

表:\(Prices\)

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| product_id    | int     |
| start_date    | date    |
| end_date      | date    |
| price         | int     |
+---------------+---------+
(product_id,start_date,end_date) 是 prices 表的主键(具有唯一值的列的组合)。
prices 表的每一行表示的是某个产品在一段时期内的价格。
每个产品的对应时间段是不会重叠的,这也意味着同一个产品的价格时段不会出现交叉。

表:\(UnitsSold\)

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| product_id    | int     |
| purchase_date | date    |
| units         | int     |
+---------------+---------+
该表可能包含重复数据。
该表的每一行表示的是每种产品的出售日期,单位和产品 id。

编写解决方案以查找每种产品的平均售价。\(average_price\) 应该 四舍五入到小数点后两位

返回结果表 无顺序要求

结果格式如下例所示。

示例 1:

输入:
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    |
+------------+---------------+-------+
输出:
+------------+---------------+
| 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

2.题解

# Write your MySQL query statement below
select p.product_id, ifnull(round(sum(p.price*u.units)/sum(u.units),2),0) as average_price
from Prices p left join UnitsSold u
on p.product_id = u.product_id and u.purchase_date between p.start_date and p.end_date
group by p.product_id

标签:02,product,2019,+---------------+---------+,1251,date,平均,id,售价
From: https://www.cnblogs.com/trmbh12/p/17919364.html

相关文章

  • 世微 AP5219 平均电流型LED 降压恒流驱动器 兼容LN2516/LN2517
    产品描述AP5219是一款PWM工作模式,内置功率管,适用于5V~100V输入的高精度降压LED恒流驱动芯片。输出功率可达25W,电流2.5A。AP5219可实现全亮/半亮功能切换,通过MODE切换:全亮/半亮模式。AP5219工作频率固定在130KHZ,同时内置抖频电路,可以降低对其他设备的EMI干扰。另......
  • R语言主成分、因子分析、聚类对我国城镇私营单位就业人员平均工资数据研究与分析
    分析师:HuaruiHe数据显示2019年全国城镇私营单位就业人员年平均工资为53604元,比上年增长8.1%,而2019年全国城镇非私营单位就业人员年平均工资为90501元,名义增长率9.8%,实际上,一直以来城镇私营单位就业人员年平均工资都要高于非私营单位,并且增长率也高与非私营单位,主要原因是非私营单......
  • ArcPy批量计算多张栅格图像各像元的平均数值
      本文介绍基于Python中ArcPy模块,对大量长时间序列栅格遥感影像文件的每一个像元进行多时序平均值的求取。  在遥感应用中,我们经常需要对某一景遥感影像中的全部像元的像素值进行平均值求取——这一操作很好实现,基于ArcMap软件或者简单的Python代码就可以实现;但有时候,我们会需......
  • 十年超越之作一加12售价4299元起 产品力超越所有骁龙8Gen3 Pro版旗舰
         2023年12月5日,一加正式发布十年旗舰一加12。作为一加十年超越之作,一加12秉持「产品力优先」理念,带来多项领先行业的首创技术。一加12全球首发拥有医疗级护眼方案和行业第一4500nit峰值亮度的2K东方屏,完整搭载Find影像团队倾力打造的「新一代超光影影......
  • LeetCode643. 子数组最大平均数I
    题目描述思路:滑动窗口模板定义需要维护的变量//1.定义需要维护的变量doublesum=0;doublemax_avg=Integer.MIN_VALUE;窗口固定大小为k,所以用ifif(end-start+1==k){ sum-=nums[start]; start+=1;}方法一:classSolution{publicdouble......
  • 洛谷P5719 分类平均
    intmain(){ intn,k,add=0,abb=0; doublesum=0,cnt=0; cin>>n>>k; for(inti=1;i<=n;++i) if(i%k==0) { add++; sum+=i; } cout<<fixed<<setprecision(1)<<sum/add<<''; for(inti=1;i<=n;++i) if(i%k......
  • word 一行文字平均间隔占一行
    最近做生成word的功能,发现修订内容,总是区区几个字就劈叉很大间隔占满一行,效果如下图其实是分散对齐的问题,可以选择将“修订内容:”单独作为一行,或者选择左对齐即可。......
  • R语言集成模型:提升树boosting、随机森林、约束最小二乘法加权平均模型融合分析时间序
    原文链接:http://tecdat.cn/?p=24148原文出处:拓端数据部落公众号 最近我们被要求撰写关于集成模型的研究报告,包括一些图形和统计输出。特别是在经济学/计量经济学中,建模者不相信他们的模型能反映现实。比如:收益率曲线并不遵循三因素的Nelson-Siegel模型,股票与其相关因素之间的......
  • 查看SQLServer平均最耗资源时间的SQL语句
    SELECT(total_elapsed_time/execution_count)/1000N'平均时间ms',total_elapsed_time/1000N'总花费时间ms',total_worker_time/1000N'所用的CPU总时间ms',total_physical_reads......
  • 性能测试---并发线程数&QPS&平均耗时&95分位耗时
    文章转发,原文来自:https://cloud.tencent.com/developer/article/1784548?ivk_sa=1024320u【概念解释】并发线程数:指的是施压机施加的同时请求的线程数量。比如,我启动并发线程数100,即我会在施压机器上面启动100个线程,不断地向服务器发请求。QPS:每秒请求数,即在不断向服务器发送请......