Great article. Got me on the right track. 

Actual solution I went with was something like:

select
    `vPamLearner`.`learnerId`,
    `vPamLearner`.`usedName`,
    `vPamLearner`.`surname`,
    max(prComp.dateSubmitted) latestSubmitted,
    max(prComp.FProgressReviewId) latestSubmittedId,
    max(prStarted.dateStarted) latestStarted,
    max(prStarted.FProgressReviewId) latestStartedId
from vPamLearner
        left join vPamFProgressReview prComp on vPamLearner.learnerId =
prComp.learnerId and  prComp.status = 'c'
        left join vPamFProgressReview prStarted on vPamLearner.learnerId =
prStarted.learnerId and  prStarted.status = 's'
where
        `vPamLearner`.`assessorId` = 5
group by `vPamLearner`.`learnerId`;

Cheers

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf
Of Baron Schwartz
Sent: 20 March 2008 14:54
To: [EMAIL PROTECTED]
Cc: mysql@lists.mysql.com
Subject: Re: Selecting the most recent entry for each object.

Hi,

On Thu, Mar 20, 2008 at 10:35 AM, Edward Corbett <[EMAIL PROTECTED]> wrote:
> Hi,
>
>
>
>  I have a load of reviews in a table and, for each person I want to pull
out
>  the most recent review.
>
>
>
>  So, if I wanted to do this for a single person I would order by date desc
>  and use "limit 1". But I'm not sure how to do this in bulk.

Try the techniques I wrote about here:
http://www.xaprb.com/blog/2006/12/07/how-to-select-the-firstleastmax-row-per
-group-in-sql/

Baron




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to