Lets say I want a table that gives me the 4 columns of data below, but I only want a single row for each unique "ID" using the "Date" column to select only the most recent date for each unique "ID":
|--ID--|-Type-|-Code-|--Date--|
| 1 | A | 11 |11/07/13|
| 2 | A | 11 |11/07/13|
| 2 | B | 12 |10/07/13| <-- don't want this record from ID=2 as
| 3 | A | 11 |11/07/13| there is a more recent date for it
| 4 | A | 10 |11/07/13| than 10/07/2013
| 5 | A | 11 |11/07/13|
I've tried adapting this answer that seemed to be for a similar question, but I'm getting the following error:
Your query does not include the specified expression 'ID' as part of an part of an aggregate function
Here's my adapted version of that SQL I was trying to run in Access:
SELECT ESM.ID, ESM.Type, ESM.Code, ESM.Date
FROM Emp_Stat_Mon As ESM
INNER JOIN
(
SELECT ID, MAX(Date) AS MaxDate
FROM Emp_Stat_Mon
GROUP BY ID
) groupedESM ON ESM.ID = groupedESM.ID AND ESM.Date = groupedESM.MaxDate;