【发布时间】:2013-02-25 12:42:54
【问题描述】:
我有 2 个数据库表:客户信息和余额
客户:客户 ID、姓名
交易:Customer_ID、Transaction_Name、Transaction_Amount...(其他列,但我的问题不是必需的)
预期查询输出示例:
Customer_ID | Debit_Balance | Credit_Balance
1 | 500.00|
2 | | 300.00
解释:客户 1 有 500.00 余额,客户 2 有 300.00 额外支付的金额(这通常是 (-) 负数)
问题:
如何仅在单个查询中执行此操作?我只是想生成报告(如上面的示例输出) 以显示结果金额 if positive 为那些negative 余额的 Debit_Balance 和 Credit_Balance 然后将处理结果使用 PHP。
更新:
我曾经对交易金额进行过这种处理:我根据他们的Transaction_Name总结所有Transaction_Amount。
即
Balance = (All Transaction_Name 'SALES') Less (-) (All Transaction_Name 'SALES') Transaction_Name 'PAYMENT')
但这将迫使我创建虚拟表作为我的报告的存储库表和更多的 php 条件来比较和插入。
【问题讨论】:
-
你自己有没有尝试过?
-
@juergend 我尝试将 Sum(Transaction_Amount) 作为 Debit_Balance,将 Sum(Transaction_Amount) 作为 Credit_Balance,但结果是 2 列有值。如果存在的话,我认为这是条件查询。