Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.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 每个基金和客户所需的平均值_Sql_Sql Server_Tsql - Fatal编程技术网

Sql 每个基金和客户所需的平均值

Sql 每个基金和客户所需的平均值,sql,sql-server,tsql,Sql,Sql Server,Tsql,如何计算可能拥有多个基金的客户的平均基金余额 例如,成员32只有42515.4452的基金余额 但对于428成员,我想返回(2400.6078+8317.434)/2=5359.021 对于成员1214,我需要(2043.6056+3110.9399+15596.3102)/3=681.2019 我尝试了以下方法,不确定我做错了什么 SELECT [dim_member_key], AVG(fund_balance) OVER(PARTITION BY fund_code) AS

如何计算可能拥有多个基金的客户的平均基金余额

例如,成员32只有42515.4452的基金余额
但对于428成员,我想返回(2400.6078+8317.434)/2=5359.021
对于成员1214,我需要(2043.6056+3110.9399+15596.3102)/3=681.2019

我尝试了以下方法,不确定我做错了什么

SELECT [dim_member_key], 
       AVG(fund_balance) OVER(PARTITION BY fund_code) AS AvgAmount
FROM #test;

如果您希望每个客户都有此功能,那么这应该是按键划分的
分区:

SELECT dim_member_key, 
       AVG(fund_balance) OVER (PARTITION BY dim_member_key) AS AvgAmount
FROM #test;
使用聚合可以更简洁地获得相同的信息:

SELECT dim_member_key, 
       AVG(fund_balance) OVER (PARTITION BY dim_member_key) AS AvgAmount
FROM #test
GROUP BY dim_member_key;

酷,没错,当我写它的时候,我只是觉得我需要按成员进行分区。:-)谢谢,请不要使用图像作为数据,使用表格文本。