Как 'добавить' столбец к результату запроса, в то время как запрос содержит агрегатную функцию?

У меня есть таблица под названием 'Присутствие', которое используется для записи студенческого времени присутствия в курсах. Эта таблица имеет 4 столбца, скажем 'идентификатор', 'course_id', 'attendance_time', и 'student_name'. Пример немногих записей в этой таблице:

    23 100    01.01.2010 10:00:00    Tom

    24 100    01.01.2010 10:20:00    Bob

    25 187    02.01.2010 8:01:01    Lisa

.....

Я хочу создать сводку последнего времени присутствия для каждого курса. Я создал запрос ниже:

SELECT course_id, max(attendance_time) FROM attendance GROUP BY course_id

Результат был бы чем-то вроде этого

100    01.01.2010 10:20:00

187    02.01.2010 8:01:01

Теперь, все, что я хочу сделать, добавляет 'идентификационный' столбец к результату выше. Как сделать это?

Я не могу только изменить команду на что-то вроде этого

SELECT id, course_id, max(attendance_time) FROM attendance GROUP BY id, course_id

потому что это возвратило бы все записи, как будто агрегатная функция не используется.Пожалуйста, помогите мне.

5
задан Unreason 26 July 2010 в 07:55
поделиться