查询中的错误以获得平衡

时间:2014-07-01 13:21:10

标签: sql ms-access balance

我有一张现金表,其中包含字段:doc_num,旁白,日期,债权人,债务人 现在我想显示总和(债权人 - 债务人)作为每行的余额。还显示以前的余额 像这样:

--------------------------------------------------------------------------------------
doc_num-------date----------narration------------credit-------debtor---balance
--------------------------------------------------------------------------------------
                         previous balance                                 2000    
 1       2014/06/10        remit             5000          0              5000
 2       2014/06/12        bar                  0          2000           3000
 3       2014/06/15        remit             1000          0              4000

这是我的疑问:

SELECT  ''                  AS docnum,
        ''                  AS c_date,
        'previous balance'  AS narration,
        " "                 AS creditor,
        " "                 AS debtor,
        Sum(creditor-debtor),
        "c_date< ' " &  2014/06/10  & "'" AS Balance 
FROM    Cash 
UNION 
SELECT  doc_num,
        c_date,
        narration,
        creditor,
        debtor,
        Sum(creditor-debtor),
        "doc_num<=" & doc_num AS Balance 
FROM    Cash
WHERE   (((Cash.c_date) Between ("2014/06/10") And ("2014/06/15")))
ORDER BY docnum;

我遇到了这个错误: 您试图执行不包含指定表达式的查询&#39; doc_num&#39;作为聚合的一部分 我在访问中使用此查询(mdb) 什么是正确的查询? 感谢

1 个答案:

答案 0 :(得分:1)

也许这就是:'和'“让我失望了。

SELECT  ''                  AS docnum,
        ''                  AS c_date,
        'previous balance'  AS narration,
        " "                 AS creditor,
        " "                 AS debtor,
        Sum(creditor-debtor),
        "c_date< ' " &  2014/06/10  & "'" AS Balance 
FROM    Cash 
Group by '','','previous balance', " ", " ", "c_date< ' " &  2014/06/10  & "'"
UNION 
SELECT  doc_num,
        c_date,
        narration,
        creditor,
        debtor,
        Sum(creditor-debtor),
        "doc_num<=" & doc_num AS Balance 
FROM    Cash
WHERE   (((Cash.c_date) Between ("2014/06/10") And ("2014/06/15")))
GROUP BY doc_num,
        c_date,
        narration,
        creditor,
        debtor,
        "doc_num<=" & doc_num 
ORDER BY docnum;