2011-04-06 64 views
2

对不起,我不能更具体,但我不知道如何描述我的问题在标题..分别我不知道如何搜索类似的问题。获取最近的记录到特定的日期按类型分组

所以这里是交易。我有这个表记录:

sample database table

正如你所看到的,我有数据,对不同类型不同月份进入。我的目标是获取按类型分组的最后输入金额,这应该由日期限制。

例如:

如果我指定日期2011-03-01,该查询应返回3个记录用量 - 10,20和30,因为用于type = 1最近插入的记录为' 2011-03-01“的日期为2011-01-01,数量为10.对于类型= 2,”2011-03-01“的最近日期为2011-02-01,数量为20.并且对于类型= 3,最近到'2011年3月1日'是'2011年3月1日',所以它返回金额= 30。

那么如何形成MySQL查询呢?

回答

1

现在我只能想到一个子查询版本:

SELECT type, amount 
FROM table AS t 
WHERE dat = (
    SELECT MAX(dat) 
    FROM table 
    WHERE type=t.type 
     AND dat <= '2011-03-01' 
) 
+0

太谢谢你了。这不是那么难的解决方案。多可惜。再次感谢。 – 2011-04-06 11:42:18