如何创建在MS ACCESS

时间:2015-09-02 02:12:39

标签: sql ms-access circular-reference calculated-field running-total

我正在从excel spreedsheet创建一个Access数据库查询,其中“Total Capital Calls”行是自己计算的,而“Current Capital Call”是静态的。

spreedsheet的数据:

                                 A          B           C           D  

1当前资本要求1,000,000 240,000 2,000,000 1,960,000

2总资本要求1,000,000 1,240,000 3,240,000 5,200,000

计算如下:

                                 A          B           C           D      

1当前资本要求1,000,000 240,000 2,000,000 1,960,000

2总资本要求1,000,000 = + B1 + A2 = + C1 + B2 = + D1 + C2

因此,当数据移至下一个总计资本调用字段时,会重复该公式,将总计与下一个“总资本调用”字段相加。

我正在尝试使用计算中相同的计算字段名称在查询中创建计算字段。我需要计算字段“Total Capital Calls”来与[Current Capital Call]字段汇总。

例如:

SELECT LlamadoDeCapital.[Total Capital Committed], 
    LlamadoDeCapital.[Capital Call Request Date], 
    LlamadoDeCapital.[Capital Call Date], 
    LlamadoDeCapital.[Current Capital Call], 
    [Current Capital Call]+[Total Capital Calls] 
AS [Total Capital Calls]
FROM LlamadoDeCapital;

运行查询后,我收到此消息:

Circular reference caused by alias 'Total Capital Calls' in query definition's SELECT list

是否可以在其自己的表达式中调用计算字段?

将计算字段与自身和其他字段相加是否有更好的解决方案?

1 个答案:

答案 0 :(得分:0)

好的,所以添加clng函数就是解决方案:

DSum(“CurrentCapitalCall”,“LlamadoDeCapital”,“CapitalCallDate< =”& clng( [CapitalCallDate] )AS TotalCapitalCalls

使用两个字段运行总计。