SQL如何将列添加到';s是一个类别的总和';s数量
我有一个如下形状的数据表: 我希望用SQL添加一列,该列将是按月份计算的总类别的总和,而不删除任何行。比如说, 我的目标是获取这些分类数据,并对其进行一些计算,比如将其除以数量,然后观察其随时间的变化 我尝试按类别和日期使用GROUP,但最终我丢失了要与类别级数据进行比较的项目级数据 我也试过这样做SQL如何将列添加到';s是一个类别的总和';s数量,sql,Sql,我有一个如下形状的数据表: 我希望用SQL添加一列,该列将是按月份计算的总类别的总和,而不删除任何行。比如说, 我的目标是获取这些分类数据,并对其进行一些计算,比如将其除以数量,然后观察其随时间的变化 我尝试按类别和日期使用GROUP,但最终我丢失了要与类别级数据进行比较的项目级数据 我也试过这样做 SELECT Item, Category, Date, Qty, (sum(QTY) from TABLE) FROM TABLE 但这只给出了整列的数量总和,而不是按月份/年份和类别划分
SELECT
Item, Category, Date, Qty, (sum(QTY) from TABLE)
FROM TABLE
但这只给出了整列的数量总和,而不是按月份/年份和类别划分
有人知道什么可能有用吗?我对使用SQL比较陌生,所以希望我能正确地解释我的问题。使用窗口函数:
select t.*,
sum(qty) over (partition by category, date) as category_sum
from t;
这假设date
实际上只是月份和年份。如果是准确的日期,则需要从中提取月份和年份