SQL(Sybase)返回计算行的SUM

时间:2013-10-20 15:58:17

标签: sql sybase

以下查询返回所有具有贷方余额的客户(列ID和总计) - 有没有办法只返回总和?

SELECT Customer_ID AS 'ID',
  (
    SELECT SUM(Credit) - SUM(Debit)
    FROM A_Sales_Ledger
    WHERE Document_Date <= '2013-09-30'
      AND Customer_ID = ID
  ) AS 'Total'
FROM A_Sales_Ledger
WHERE Total > 0
GROUP BY Customer_ID

1 个答案:

答案 0 :(得分:1)

尝试这样的事情:

SELECT SUM(a.total)
FROM (
  SELECT (SUM(Credit) - SUM(Debit)) AS "total"
  FROM A_Sales_Ledger
  WHERE Document_Date <= '2013-09-30'
  GROUP BY Customer_ID
  HAVING SUM(Credit) - SUM(Debit) > 0
  ) a;

sqlfiddle demo