Pues estoy usando Doctrine 2.0 como ORM para php, aunque creo que el problema se puede aplicar a cualquier ORM.
El caso es que estoy haciendo un foro, y quiero identificar que hilos tienen mensajes nuevos y cuales no.
Antes usaba SQL a pelo, y lo solucionaba con una tabla donde guardo los IDs del usuario y del hilo. Si existe la fila del usuario y el hilo, quiere decir que lo ha leído, si no está, no lo ha leído, así que con un joinLeft lo solucionaba, tal que así.
Código:
SELECT nick, titulotopic, IF (leidos.usuario, 0, 1) as leido FROM usuarios, topics LEFTJOIN leidos on topics.id = leidos.topic AND usuarios.id = $usuario
Sin embargo, en el ORM no sé como hacerlo...