选择TOP N在MS Access 2010查询中不起作用

时间:2014-05-05 09:57:40

标签: sql ms-access-2010

它没有按预期返回我的1条记录。

SELECT TOP 1 ApplicationVersion 
FROM [All Documents]
ORDER BY Iif(IsNumeric([ApplicationVersion]), Clng([ApplicationVersion]), 0) DESC

我哪里出错了?

1 个答案:

答案 0 :(得分:0)

我在Access 2010中发现了“SELECT TOP 1”的新问题,2007年不存在这些问题:

  1. 如果查询在结果集中返回多个“顶部”记录,其中排序字段相同,则TOP 1将返回全部那些记录,即使未分类的字段不同。我通过添加另一个排序字段(时间戳)来解决这个问题,这个字段永远不会相同。

  2. 为使用“TOP 1”子查询的查询添加条件不起作用。例如:

      

    SELECT [my_top_1_query]。* FROM [my_top_1_query] WHERE my_id = 1234

    不起作用。 如果我直接将标准添加到[my_top_1_query],那么它确实有效。

  3. 我认为在A2010中对JET进行了更改,就像它组装此类查询一样。