2012-01-17 34 views
1

我有一個查詢被SO號碼過濾。它還有一個列,每次更新SO時都會生成一個唯一的編號。我如何更改我的代碼,以便不僅可以按SO編號進行過濾,還可以通過TOP 1或更新密鑰的最高計數進行過濾?如何過濾頂部1的SQL表?

謝謝! 這是在SQL Server上。如果指定了前面

+1

最高計數?您可以使用'MAX(column_name)'來檢查該列中的最高值... – 2012-01-17 17:26:20

+0

是... ORDER BY unique_number_key DESC LIMIT 1您的意思是?如果沒有,請在你的問題中詳細說明一下。 – 2012-01-17 17:27:11

回答

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) 

,這將給所有具有該最大值的行,如果有多個行則返回全部。

+0

這工作!非常感謝你! – John 2012-01-17 17:37:50

+0

@John確保你把這個標記爲答案:) – 2012-01-17 17:43:30

0
SELECT TOP 1 SONumber 
FROM ExampleTable 
ORDER BY SONumber DESC 

或者

SELECT MAX(SONumber) 
FROM ExampleTable 
+0

當然,如果這是支持的,但它通常不是 – Dan 2012-01-17 17:30:51

+0

@丹我知道這是一個非常基本的例子:)但是,如果支持這是什麼意思?你的意思是TOP關鍵字? – 2012-01-17 17:34:50

+0

是的。例如,MySQL不支持它。 – Dan 2012-01-17 17:36:54