返回具有相同列值的最新条目

时间:2016-12-08 19:39:42

标签: vb.net ms-access vb.net-2010 visual-studio-2015

美好的一天!我很难过这个。我需要在MSAccess DB上获取具有给定列值的最新条目,而不知道应该返回多少条目。

这是我正在使用的表格的示例:

ID   OrderNo   Time      Closed
10   14        17:20:05  TRUE
11   14        17:20:09  TRUE
12   15        17:22:53  TRUE
13   15        17:22:56  TRUE
14   14        17:26:26  TRUE
15   14        17:26:30  TRUE
16   14        17:26:37  TRUE

在这个例子中,我需要一个查询来返回行14,15和16.但它可能是3行,或者必须返回7行。我尝试用MAX(时间)选择具有相同OrderNo的条目,但由于毫秒不同,它只返回最新的条目。有没有办法在“OrderNo”发生变化之前获取具有相同“OrderNo”的最新条目?

很抱歉,如果我不能很好地解释自己,英语不是我的第一语言,我很感激任何帮助!

编辑:这是我尝试过的:

SELECT        ID, OrderNo, Time, Closed
FROM            Sales
WHERE        (OrderNo = ?) AND (Closed = TRUE) AND (Time =
                             (SELECT        MAX(Time) AS Expr1
                               FROM            Sales))

1 个答案:

答案 0 :(得分:0)

也许这有效:

选择ID,OrderNo,时间,从销售处关闭,其中ID< =(从Sales中选择max(ID),其中OrderNo = 14)并且ID> (从Sales中选择max(ID),其中OrderNo<> 14&ID<(从Sales中选择max(ID),其中OrderNo = 14))