Suppose I need a table that gives me 4 columns of data below, but I want only one row for each unique "identifier", using the "Date" column to select only the most recent date for each unique identifier ":
|--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 tried to adapt this answer , which seemed to be for a similar question, but I get the following error:
Your request does not include the specified expression 'ID' as part of the aggregate function part
Here is my adapted version of this SQL that I tried 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;
source share