SQL嵌套多选择语句
我正在尝试创建一个包含多个嵌套Select语句的嵌套SQL语句,用于excel vba中的记录集导入 我想做的是创建如下内容:SQL嵌套多选择语句,sql,vba,select,nested,recordset,Sql,Vba,Select,Nested,Recordset,我正在尝试创建一个包含多个嵌套Select语句的嵌套SQL语句,用于excel vba中的记录集导入 我想做的是创建如下内容: SELECT N.LimitN, Sum(N.amountN), Sum(N1.amountN1) FROM ( SELECT year as yearN, Sum(amount) as amountN, limit as limitN FROM table1 WHERE year = 2013 GROUP BY
SELECT
N.LimitN,
Sum(N.amountN),
Sum(N1.amountN1)
FROM (
SELECT year as yearN, Sum(amount) as amountN, limit as limitN
FROM table1
WHERE year = 2013
GROUP BY year, limit) as N
JOIN (
SELECT year as yearN1, Sum(amount) as amountN1, limit as limitN1
FROM table1
WHERE year = 2014
GROUP BY year, limit) as N1
ON N.LimitN = N1.LimitN1
GROUP BY N.LimitN
ORDER BY N.LimitN;
如果我的原始数据是这样的:
Year Amount Limit
2013 100 20
2013 90 30
2013 120 40
2013 5 20
2013 100 30
2013 105 40
2013 150 50
2014 115 20
2014 50 30
2014 95 40
2014 110 50
2014 30 20
Limit AmountN (i.e. 2013) Amount N1 (i.e. 2014)
20 105 145
30 190 50
40 225 95
50 150 110
我的结果表/记录集如下所示:
Year Amount Limit
2013 100 20
2013 90 30
2013 120 40
2013 5 20
2013 100 30
2013 105 40
2013 150 50
2014 115 20
2014 50 30
2014 95 40
2014 110 50
2014 30 20
Limit AmountN (i.e. 2013) Amount N1 (i.e. 2014)
20 105 145
30 190 50
40 225 95
50 150 110
提前谢谢
Peter感觉查询有点过于复杂了,您想要的只是一个按
限额
分组的金额的年度总和。这可以使用案例
SELECT
limit,
SUM(CASE WHEN year=2013 THEN amount ELSE 0 END) amountN,
SUM(CASE WHEN year=2014 THEN amount ELSE 0 END) amountN1
FROM myTable
GROUP BY limit
ORDER BY limit;
(如果我们在这里谈论访问,您将需要使用而不是案例
)到目前为止您的尝试有什么问题?B-E-A-UTIFUL!我甚至没有想到在什么时候使用这个用例。谢谢你,约阿希姆