SQL PHP检索特定商店的总金额

时间:2014-07-04 13:47:14

标签: php mysql sql

是否有查询为每个StoreName检索TotalMoney,TotalPaidMoney,TotalReturnMoney。

像:

StoreName|   TotalPaid      |     ToatalReturn       |  TotalMoney    
Pizza    | sum of PaidMoney |  sum of ReturnMoney    | sum of TotalMoney
         |                  

从此表

Date | StoreName|PaidMoney| ReturnMoney| TotalMoney
*********
2014 | Pizaa    | 33$     | 12$        | 120$
2014   Main       12$       23$          123$
2014 | Pizaa    | 33$     | 12$        | 120$
2014 | Main     | 33$     | 12$        | 120$

表I有: 商店表

3 个答案:

答案 0 :(得分:0)

您可以轻松使用GROUP BY语句,如下所示:

SELECT StoreName, SUM(PaidMoney) as TotalPaid, SUM(ReturnMoney) as TotalReturn, SUM(TotalMoney) as TotalMoney FROM store_table GROUP BY StoreName

答案 1 :(得分:0)

您可以使用以下命令:

SELECT SUM(PaidMoney) AS TotalPaid, SUM(ReturnMoney) AS TotalReturn, SUM(TotalMoney) AS TotalMoney FROM Table WHERE Store='Pizaa';

或者,如果您想要所有商店并按商店重新组合:

SELECT SUM(PaidMoney) AS TotalPaid, SUM(ReturnMoney) AS TotalReturn, SUM(TotalMoney) AS TotalMoney FROM Table GROUP BY Store;

答案 2 :(得分:0)

如果你的表中确实有这种货币符号,那可能会有点复杂。我现在假设,您的列中始终有$符号作为最后一个符号,并且没有小数值:

SELECT 
StoreName,
SUM(PAID_MONEY_VALUE) AS SUM_PAID_MONEY_VALUE,
SUM(RETURN_MONEY_VALUE) AS SUM_RETURN_MONEY_VALUE,
SUM(TOTAL_MONEY_VALUE) AS SUM_TOTAL_MONEY_VALUE
FROM
(
    SELECT 
    StoreName,
    CONVERT(int, SUBSTRING(PaidMoney, 1, LEN(PaidMoney - 1))) AS PAID_MONEY_VALUE,
    CONVERT(int, SUBSTRING(ReturnMoney, 1, LEN(ReturnMoney - 1))) AS RETURN_MONEY_VALUE,
    CONVERT(int, SUBSTRING(TotalMoney, 1, LEN(TotalMoney - 1))) AS TOTAL_MONEY_VALUE
    FROM <YOUR_TABLE>
) AS SUBQUERY
GROUP BY StoreName
相关问题