Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.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_Ms Access - Fatal编程技术网

SQL根据条件添加值,然后将这两个和除法

SQL根据条件添加值,然后将这两个和除法,sql,ms-access,Sql,Ms Access,我有一个叫做数据的表 资料 年份类型值 1 1 5 1 1 10 1 2 15 1 2 25 1 1 15 1 2 20 1 1 5 2 2 10 2 2 45 2 2 10 2 1 20 2 2 5 2

我有一个叫做数据的表

资料 年份类型值 1 1 5 1 1 10 1 2 15 1 2 25 1 1 15 1 2 20 1 1 5 2 2 10 2 2 45 2 2 10 2 1 20 2 2 5 2 1 15 2110

我想每年对所有类型1的sum1和类型2的sum2进行求和,然后将sum1除以sum2,并按年份对结果进行分组。第一年的sum1=5+10+15+5=35,sum2=15+25+20=60,sum135/sum60=0.58333。完整的输出将是

年值 1 0.5833 20.5

我尝试了以下查询,但它不起作用。 选择d.年份,a.Sum1/b.Sum2 根据数据d, 从数据中选择Data.Year,SUMValue作为Sum1,其中Type=1 GROUP BY Data.Year, 从数据中选择Data.Year,SUMValue作为Sum2,其中Type=2按数据分组。Year b 按d.年分组


当我运行查询时,我发现您尝试执行的查询不包括作为聚合函数一部分的指定表达式“a.Sum1/b.Sum2”。我在查询中做错了什么?

您使用IIF函数

select Year,sum(iif(Type=1, value, 0))/sum(iif(Type=4, value, 0))
from data
GROUP BY Year

你使用IIF函数

select Year,sum(iif(Type=1, value, 0))/sum(iif(Type=4, value, 0))
from data
GROUP BY Year

你使用IIF函数

select Year,sum(iif(Type=1, value, 0))/sum(iif(Type=4, value, 0))
from data
GROUP BY Year

你使用IIF函数

select Year,sum(iif(Type=1, value, 0))/sum(iif(Type=4, value, 0))
from data
GROUP BY Year

只有类型1和类型2。您的查询提到类型4。这是一个打字错误?是的,这是一个打字错误,我现在已经更新了帖子。只有类型1和类型2。您的查询提到类型4。这是一个打字错误?是的,这是一个打字错误,我现在已经更新了帖子。只有类型1和类型2。您的查询提到类型4。这是一个打字错误?是的,这是一个打字错误,我现在已经更新了帖子。只有类型1和类型2。您的查询提到类型4。这是一个打字错误?是的,这是一个打字错误,我现在已经更新了帖子。