Estoy desarrollando una aplicación con Symfony2 y Doctrina, y una tabla llamada estado donde almaceno la ubicación y la fecha de libros, tales como:¿Cómo hacer coincidir solo los últimos registros actualizados en Doctrine?
ID | Book | Date | Location
------------------------------------------------
1 | Book_1 | 2011-08-29 | Home
2 | Book_1 | 2011-08-30 | Office
3 | Book_1 | 2011-09-02 | Friend's House
4 | Book_2 | 2011-09-02 | Office
5 | Book_2 | 2011-09-04 | Home
El registro de estado con la fecha más reciente representa la actual (o última conocida) ubicación de ese libro. En el ejemplo anterior, Book_1 se encuentra actualmente en "Friend's House" y Book_2 está en "Home".
El código siguiente obtiene cualquier registros que en algún momento tuvieron un lugar de "Inicio":
$em = $this->getEntityManager();
$query = $em->createQuery('SELECT s FROM myBookTestBundle:Status s WHERE s.location=:x')->setParameter('x', 'Home');
$status = $query->getResult();
En su lugar, me gustaría seleccionar sólo aquellos libros cuyos actual ubicación partidos "Inicio" . En el ejemplo anterior, eso solo sería registrar ID = 5 (Libro_2).
¿Hay alguna manera de hacer esto fácilmente con DQL?
Cualquier ayuda es muy apreciada.
Gracias,
Ralph