代码之家  ›  专栏  ›  技术社区  ›  Venkat

我在MySQL中遇到SUM()问题

  •  0
  • Venkat  · 技术社区  · 14 年前

    余额 一个特定的顾客由一个特定的出席者出席。标准是客户可以购买多个项目。每件购买的物品都被单独记录下来。在某些情况下 出席者 '值将为空。

    我的问题是:

    SELECT Customer, AttendedBy, SUM(BalanceAmt) FROM billing GROUP BY Customer 
         HAVING AttendedBy='attender' AND Customer='CustomerName'
    

    出席者 帮我做吧。。

    提前告诉他。。

    3 回复  |  直到 14 年前
        1
  •  1
  •   hol    14 年前

    SELECT Customer, SUM(BalanceAmt) 
    FROM billing 
    WHERE AttendedBy='attender' AND Customer='CustomerName' 
    GROUP BY Customer  
    

    我不知道分配给你的任务是什么。如果您想要客户的金额,则指定为:

    SELECT Customer, AssignedTo, SUM(BalanceAmt) 
    FROM billing 
    WHERE AttendedBy='attender' AND Customer='CustomerName' 
    GROUP BY Customer, AssignedTo 
    
        2
  •  0
  •   AJ.    14 年前

    我认为你需要包括一个 where 子句以排除空值。。。下面这样的方法应该可以达到目的:

    SELECT Customer, AssignedTo, SUM(BalanceAmt) FROM billing 
    WHERE not(BalanceAmt is null) AND AttendedBy='attender' AND Customer='CustomerName'
    GROUP BY Customer, AssignedTo
    

    嗯。

        3
  •  0
  •   Peter Olson    12 年前
    SELECT Customer, SUM(BalanceAmt) 
    FROM billing 
    WHERE AttendedBy='attender' AND Customer='CustomerName' 
    GROUP BY Customer
    

    在您的上述查询中 group by 不需要,因为您已将列放在 where 条款。

    你可以把它从 select 然后你移除 分组依据 也。

    你可以写这样的东西,得到客户明智的总和。

    SELECT Customer, SUM(BalanceAmt) 
    FROM billing 
    WHERE AttendedBy='attender'
    GROUP BY Customer;