2014-10-20 54 views
0

我想将此查询转换为视图。我需要消除变量的使用。 SQL代码是这样的:未使用变量的MYSQL视图

SET @runningTotal = 0; 
SELECT 
    feescollected.DatePaid, feescollected.TermPaidFor,                                
    feescollected.FeesPaid, 
@runningTotal := @runningTotal + feescollected.FeesPaid AS runningTotal 
FROM feescollected; 

预期输出:

DatePaid TermPaidFor  FeesPaid runningTotal 
----------------------------------------------------  
2014-02-06 I    150000  150000 
2014-03-24 I    70000  220000 
2014-04-08 I    80000  300000 

回答

0

喜欢这个?

SELECT 
    feescollected.DatePaid, feescollected.TermPaidFor,                                
    feescollected.FeesPaid, 
(feescollected.FeesPaid + 0) AS runningTotal 
FROM feescollected; 
0

使用子查询基于日期

SELECT 
    a.DatePaid, 
    a.TermPaidFor,                                
    a.FeesPaid, 
(select sum(b.FeesPaid) from feescollected b where a.DatePaid >= b.DatePaid) AS runningTotal 
FROM feescollected a 

DEMO

+0

非常感谢来计算总。尽管一旦我添加了更多的数据和列,结果就出错了。我想我需要了解如何子查询流程的执行。 – 2014-10-22 10:01:10