如何通过TOP 1过滤sql表?

时间:2012-01-17 17:24:40

标签: sql

我有一个按SO号过滤的查询。它还有一个列,每次更新SO时都会生成一个唯一编号。如何更改我的代码,以便不仅可以通过SO编号进行过滤,还可以按TOP 1过滤,或更新密钥的最高计数?

谢谢! 这是在SQL Server上。应该先前指定

2 个答案:

答案 0 :(得分:4)

SELECT whatever_you_want
    FROM whereever_it_is
    WHERE your_criteria
    ORDER BY so_number DESC
    LIMIT 1

这将给你“最高”的so_number,即使有几个具有相同的值,也只返回一个记录

SELECT whatever_you_want
    FROM whereever_it_is
    WHERE your_criteria
        AND so_number == MAX(so_number)

将为所有行提供该最大值,如果有多个行,则返回all。

答案 1 :(得分:0)

SELECT TOP 1 SONumber
FROM ExampleTable
ORDER BY SONumber DESC

或者

SELECT MAX(SONumber)
FROM ExampleTable