Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL如何将列添加到';s是一个类别的总和';s数量_Sql - Fatal编程技术网

SQL如何将列添加到';s是一个类别的总和';s数量

SQL如何将列添加到';s是一个类别的总和';s数量,sql,Sql,我有一个如下形状的数据表: 我希望用SQL添加一列,该列将是按月份计算的总类别的总和,而不删除任何行。比如说, 我的目标是获取这些分类数据,并对其进行一些计算,比如将其除以数量,然后观察其随时间的变化 我尝试按类别和日期使用GROUP,但最终我丢失了要与类别级数据进行比较的项目级数据 我也试过这样做 SELECT Item, Category, Date, Qty, (sum(QTY) from TABLE) FROM TABLE 但这只给出了整列的数量总和,而不是按月份/年份和类别划分

我有一个如下形状的数据表:

我希望用SQL添加一列,该列将是按月份计算的总类别的总和,而不删除任何行。比如说,

我的目标是获取这些分类数据,并对其进行一些计算,比如将其除以数量,然后观察其随时间的变化

我尝试按类别和日期使用GROUP,但最终我丢失了要与类别级数据进行比较的项目级数据

我也试过这样做

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
实际上只是月份和年份。如果是准确的日期,则需要从中提取月份和年份