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

测试结果

相关推荐
学逆向的几秒前
C 内存属性
c语言·开发语言·算法·网络安全
泡海椒15 分钟前
JQuick-SQL 与关系型数据库集成:应用层读取后注册查询
数据库·sql
Carol063015 分钟前
上肢及肩肘关节
java·服务器·数据库
lengxuenong20 分钟前
树状数组 · 信息学学习手册1-求和3个模板
c++·学习·算法·青少年编程
ComputerInBook29 分钟前
泛函分析概观
人工智能·算法·机器学习·泛函分析
程序员塔塔喵33 分钟前
【MySQL篇|第二篇】慢SQL及其优化手段
sql·mysql·慢sql优化
鸽芷咕33 分钟前
数据孤岛怎么拆?金仓KFS数据集成软件从原理到落地
数据库
一世繁华行35 分钟前
CAPL浏览器(翻译自官方文档)
运维·服务器·数据库
得助智能-垂类大模型44 分钟前
多Agent平台哪家做得好?2026年企业级多智能体平台选型指南
大数据·数据库
Nuanyt1 小时前
LeetCode Hot100 刷题笔记 · 普通数组专题
java·笔记·算法·leetcode