【发布时间】:2014-10-16 17:18:21
【问题描述】:
我正在尝试汇总上个月输入的金额 (SET)
结构如下:
CREATE TABLE tester (
date_amount date,
amount int);
INSERT INTO tester VALUES
("2014-08-01", 1000),
("2014-08-02", 1001),
("2014-08-03", 1002),
("2014-08-31", 2000),
("2014-08-31", 2000),
("2014-08-31", 2000),
("2014-09-01", 1006);
这里以示例为例
如果我输入 year= 2014 和 month= 9,我应该自动总结在这种情况下输入的月份的最后一天“2014-08-31”中的所有金额
这里是demo:
SET @month := 09;
SET @year := 2014;
select sum(amount) from tester
where month(date_amount)= @month-1
查询必须汇总上个月最后一天输入的所有金额
我必须有这样的结果:
SUM(AMOUNT)
6000
我试过这个,但不是正确的方法,因为我知道这个月的最后一天:
SET @month := 09;
SET @year := 2014;
select sum(amount) from tester
where month(date_amount)= @month-1 and day(date_amount)= 31
我也试过这个查询,但得到了 NULL
SET @month := 09;
SET @year := 2014;
SELECT sum(amount)FROM tester
WHERE month(date_amount)= @month-1 AND day(date_amount) =last_day(day(date_amount))
请问有人可以帮我解决这个问题吗?
【问题讨论】: