By using the proper combination of TOP, ORDER BY, DISTINCT, GROUP BY and
Sub-query, you can probably design a query that will give you the same
result with T-SQL as the use of Last() in MS Access.
According to the Access help file, FIRST and LAST return values from
some arbitrary row in your query. Since the correct result is
undefined there perhaps isn't a good answer to your question. A better
question would be, what result did you expect from LAST? Maybe you
could use the MIN or MAX aggregate instead.
--
David Portas, SQL Server MVP
Whenever possible please post enough code to reproduce your problem.
Including CREATE TABLE and INSERT statements usually helps.
State what version of SQL Server you are using and specify the content
of any error messages.