Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Il modo più sicuro per ottenere l'ID dell'ultimo record da una tabella

SELECT IDENT_CURRENT('Table')

Puoi usare uno di questi esempi:

SELECT * FROM Table 
WHERE ID = (
    SELECT IDENT_CURRENT('Table'))

SELECT * FROM Table
WHERE ID = (
    SELECT MAX(ID) FROM Table)

SELECT TOP 1 * FROM Table
ORDER BY ID DESC

Ma il primo sarà più efficiente perché non è necessaria alcuna scansione dell'indice (se hai l'indice sulla colonna Id).

La seconda soluzione è equivalente alla terza (entrambi devono scansionare la tabella per ottenere l'ID massimo).