JPA Seleccione la última instancia para cada elemento

Digamos que tengo una entidad de reunión. Cada reunión tiene un único asistente y una fecha de reunión. Dentro de mi mesa de reunión puedo tener varias reuniones para cada asistente, con diferentes fechas para cada uno. Necesito una consulta JPA que seleccionará solo la última reunión para todos los asistentes. Por ejemplo, si mi mesa se ve así

Meeting ID | Attendee ID | Meeting Date
1          | 1           |  6/1/2011
2          | 2           |  6/1/2011
3          | 1           |  6/6/2011
4          | 3           |  6/6/2011

Mi resultado debería ser

Meeting ID | Attendee ID | Meeting Date
2          | 2           |  6/1/2011
3          | 1           |  6/6/2011
4          | 3           |  6/6/2011

Utilizando JPA 2 contra postgres. La reunión tiene 1-1 para los asistentes y una fecha de marca de tiempo simple. Sospecho que voy a necesitar hacer un grupo por y max (bla) y tal vez unirme a mí mismo, pero no estoy seguro de la mejor manera de abordar esto.

Actualizar Después de pasar la tarde jugando con esto, todavía no tengo una solución JPQL aceptable para esto. Esto es lo que tengo hasta ahora:

select m from Meeting m 
where m.meetingDate in 
    ( select max(meet.meetingDate) 
      from Meeting meet group by meet.attendee )

Tengo varias otras condiciones que no son relevantes para esta pregunta, como el filtrado por el departamento de asistentes y demás. La única razón por la que esto funciona es porque estamos rastreando la fecha de la reunión a la segunda (o más fina) y la posibilidad de que haya dos reuniones exactamente al mismo tiempo es mínima. Estamos poniendo algunas cosas de Java alrededor para mantener solo la última reunión para cada asistente en caso de que tengamos dos al mismo tiempo, pero esa es una solución bastante mala. Realmente no debería ser demasiado difícil incluirlo todo en una consulta, pero todavía tengo que resolverlo.

Actualización2: Agregar etiqueta sql porque si necesito usar sql para crear una vista y crear un objeto JPA para asignar a la vista, estoy de acuerdo con eso.

Respuestas a la pregunta(5)

Su respuesta a la pregunta