MySQL wybierz MAX (data / godzina), nie zwracając wartości maksymalnej

Przykładowa tabela:

id   computer  app      version     build    date
---|---------|------|------------|-------|---------
1  |  aaaa1  | app1 |   1.0.0    |   1   | 2013-11-11 09:51:07
2  |  aaaa1  | app2 |   2.0.0    |   2   | 2013-11-12 09:51:07
5  |  xxxx2  | app1 |   1.0.0    |   1   | 2013-11-13 09:51:07
3  |  cccc3  | app2 |   3.1.0    |   1   | 2013-11-14 09:51:07
4  |  xxxx2  | app1 |   1.0.0    |   2   | 2013-11-15 09:51:07
5  |  cccc3  | app2 |   3.1.1    |   3   | 2013-11-16 09:51:07
6  |  xxxx2  | app1 |   1.0.2    |   1   | 2013-11-17 09:51:07
7  |  aaaa1  | app1 |   1.0.2    |   3   | 2013-11-18 09:51:07

Żądane dane wyjściowe (nie jest to dokładny format ani kolejność wyświetlania), uzyskanie najnowszej instalacji dla każdej aplikacji na każdym komputerze:

7. aaaa1 - app1 - 1.0.2 - 3 - 2013-11-18 09:51:07
2. aaaa1 - app2 - 2.0.0 - 2 - 2013-11-12 09:51:07
6. xxxx2 - app1 - 1.0.2 - 1 - 2013-11-17 09:51:07
5. cccc3 - app2 - 3.1.1 - 3 - 2013-11-16 09:51:07

Moja instrukcja SQL:

SELECT 
        id,
        computer, 
        app, 
        version, 
        build, 
        MAX(date) AS installed
    FROM 
        data 
    WHERE 
        placement = 'xxx'
    GROUP BY 
        app, computer
    ;

To daje mi:

1. aaaa1 - app1 - 1.0.0 - 1 - 2013-11-11 09:51:07

i nie

7. aaaa1 - app1 - 1.0.2 - 3 - 2013-11-18 09:51:07

jak oczekiwałem.

MAX (data) działa, jeśli jaTYLKO wybierz MAX (data) i nic więcej. Ale nie mam żadnych danych do pracy (tylko najnowsza data).

SELECT 
        MAX(date) AS installed

Nie jestem ninja SQL, więc wkrótce będę łysił, drapiąc się po głowie.

questionAnswers(6)

yourAnswerToTheQuestion