不正确的小计和&在mysql中选择总计

时间:2017-10-01 02:39:47

标签: mysql select mariadb

我设法将负面与负面分开了。在sql选择下面的正面,我试图得到小计&总表示如表格中所示,第三列是正确的结果。

enter image description here

下面是sql select我已经使用但是它将结果返回到上表的第2列并且它不正确。如何获得小计和&第3栏的总结果

谢谢&此致

SELECT * FROM
(SELECT
      party AS "Account",
      sum(debit-credit) AS "Balance"
 FROM `tabGL Entry`
 WHERE party_type ="Customer" AND MONTH(posting_date) = MONTH(Now()) -1
 GROUP BY party WITH ROLLUP
 HAVING sum(debit-credit) < 0
 UNION ALL
 SELECT
      party AS "Account",
      sum(debit-credit) AS "Balance"
 FROM `tabGL Entry`
 WHERE party_type ="Customer" AND MONTH(posting_date) = MONTH(Now()) -1
 GROUP BY party WITH ROLLUP
 HAVING sum(debit-credit) > 0
) rec

 UNION ALL

 SELECT NULL AS party, sum(dep) AS Balance 
 FROM (
 SELECT SUM(credit-debit) AS dep
 FROM `tabGL Entry`
 UNION ALL 
 SELECT SUM(credit-debit) AS nodep
 FROM `tabGL Entry`
) AS recb
 GROUP BY party WITH ROLLUP

1 个答案:

答案 0 :(得分:0)

使用此语法可以防止错误地附加GROUP BY

( SELECT ... GROUP BY ... )
UNION ALL
( SELECT ... GROUP BY ... )

Versus

( SELECT ...  )
UNION ALL
( SELECT ...  )
GROUP BY ...

“小计”这个词来自哪里?我在查询中没有看到它。

我怀疑内心WITH ROLLUP被抛出。如果删除它们会发生什么?