【问题标题】:How to group by data and calculate at a time in mySQL?如何在mySQL中按数据分组并一次计算?
【发布时间】:2012-12-04 11:21:54
【问题描述】:
======================================= |输入类型 |应付 |金额 |标识符 | ======================================= |费用 | 10,000 | 5,000 | 1 | -------------------------------------- |费用 | 10,000 | 5,000 | 1 | -------------------------------------- |费用 | 10,000 | 5,000 | 2 | -------------------------------------- |存款 | 5,000 | 4,000 | 1 | -------------------------------------- |存款 | 15,000 | 10,000 | 2 | --------------------------------------

如果我想从上表中查看这样的余额:

=============================== |标识符 |余额1 |余额2 | =============================== | 1 | 24,000 | 15,000 | ------------------------------ | 2 | 20,000 | 20,000 | ------------------------------

计算 pID 1:

应付(费用)10,000+10,000 + 金额(存款)4,000 = 余额1 24,000

应付(费用)5,000+5,000 + 金额(存款)5,000 = 余额2 15,000

计算 pID 2:

应付(费用)10,000 + 金额(存款)10,000 = 余额1 20,000

应付(费用)5,000 + 金额(存款)15,000 = 余额2 20,000

  • 获取数据后如何计算?

【问题讨论】:

  • 这是什么逻辑?不应该从账户中扣除应付账款吗? :$

标签: mysql sql group-by


【解决方案1】:

如果 InputType 只能有两种不同的状态,我想你正在寻找这样的东西:

select
  pID,
  sum(case when InputType='Expenses' then Payable else Amount end) as Balance1,
  sum(case when InputType='Expenses' then Amount else Payable end) as Balance2
from tbl
group by pID

【讨论】:

    猜你喜欢
    • 2011-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-14
    • 2019-04-25
    相关资源
    最近更新 更多