2013-07-02 21 views
0

我想在我的sql server 2008數據庫上使用Last()函數來取出表中的最後一條記錄。 更具體,我使用的查詢是:sql函數last()不是一個可識別的函數

select Last(Id_Number) as id from table1 

的例外,我得到啓動這樣的,經過長期持續..但關鍵是在第一線:

http://prntscr.com/1d4o6y

我該怎麼辦?

+0

這有什麼錯'選擇MAX(ID_NUMBER )作爲表1中的ID' –

回答

0

SQL Server不支持LAST。您可以使用SCOPE_IDENTITY,@@IdentityIDENT_CURRENT(‘table1')`。例如:

SELECT IDENT_CURRENT('table1') AS Id 

或者如果您未使用IDENTITY列並手動插入ID。您可以使用MAX

SELECT MAX(Id_Number) AS Id 
FROM Table1 
+0

是的,但我怎樣才能使用身份拉出最後一條記錄? – user2396866

+0

['SCOPE_IDENTITY'](http://msdn.microsoft.com/zh-cn/library/ms190315.aspx)優於'@@ IDENTITY'。 '@@ IDENTITY'將從觸發器中獲取值; 'SCOPE_IDENTITY'只顯示你所做的改變,這幾乎肯定是你想要的。 –

+0

SELECT IDENT_CURRENT('table1')AS Id –

0

如果你想在最後一個記錄你有一個標識列(或列,其中最大的價值將是最後的記錄):

select top 1 t.* 
from t 
order by id desc;