SQL-每日一题【1251. 平均售价】

题目

Table: Prices

Table: UnitsSold

编写SQL查询以查找每种产品的平均售价。
average_price 应该四舍五入到小数点后两位。

查询结果格式如下例所示:

解题思路

1.题目要求查询每种产品的平均售价。给出了两个表,我们用聚合查询来解决此问题。

2.首先我们将两个表做连接,连接条件是 p.product_id = u.product_id,然后我们在筛选出出售日期在保质期内的记录,where u.purchase_date >= p.start_date and u.purchase_date <= p.end_date ,最后我们使用sum()函数计算出平均值,再用round()函数保留两位小数即可。

代码实现

sql 复制代码
select p.product_id, round(sum(p.price * u.units) / sum(u.units), 2) average_price
from Prices p
join UnitsSold u 
on p.product_id = u.product_id
where u.purchase_date >= p.start_date
and u.purchase_date <= p.end_date
group by product_id

测试结果

相关推荐
2301_795099748 小时前
HTML怎么创建时间轴布局_HTML结构化时间线写法【方法】
jvm·数据库·python
运气好好的8 小时前
CSS组件库如何快速扩展_通过Sass @extend继承基础布局
jvm·数据库·python
m0_613856298 小时前
Go install 命令失效原因解析与正确使用指南
jvm·数据库·python
睡觉就不困鸭8 小时前
第十七天 翻转字符串里的单词
数据结构·算法·哈希算法·散列表
星马梦缘9 小时前
数据库作战记录6 实验6
数据库·oracle
ulias2129 小时前
leetcode热题 - 4
算法·leetcode·职场和发展
AC赳赳老秦9 小时前
DBA 专属方案:用 OpenClaw 实现 SQL 语句优化、慢查询分析、数据库备份巡检全自动化
服务器·前端·数据库·ffmpeg·自动化·deepseek·openclaw
学术阿凡提9 小时前
Spring Boot 优雅实现异步调用:从入门到自定义线程池与异常处理
java·数据库·算法
夏末蝉未鸣019 小时前
跨境电商SQL Server报表生成优化:索引一改,600秒变75秒
数据库
MicroTech20259 小时前
微算法科技(NASDAQ :MLGO)量子化边缘检测技术:重塑图像处理的新范式
图像处理·科技·算法