import org.appfuse.webapp.action.BaseAction не может разрешить

SELECT  a.SSN, a.PersonName, b.TestDate, b.Score
FROM    ((Personnel AS a
        INNER JOIN Tests AS b
            ON a.SSN = b.SSN)
        INNER JOIN
        (
            SELECT  SSN, MAX(TestDate) AS MAX_DATE
            FROM    Tests 
            GROUP   BY SSN
        ) AS c  ON  b.SSN = c.SSN AND
                b.TestDate = c.MAX_DATE)

UPDATE 1

Существует много способов решить эту проблему, но решение, которое я использую, - это так. Обычно соединение между Personnel и Test будет давать все записи, но это не совсем то, что вы хотите. Поэтому я присоединился к нему с подзапросом, который получает последний TestDate для каждого SSN, и результат подзапроса затем объединяется обратно в две таблицы при условии, что он соответствует двум условиям: SSN и TestDate.

1
задан Pascal Thivent 22 October 2010 в 01:11
поделиться