Группировка по времени SQL

Я написал небольшую выборку по временному интервалу и id. Он группирует записи в таблице по строкам. Как их верно сгруппировать? на выходе должно получиться: три записи с одним id, самая ранняя запись сверху. Потом три записи с другим id и так же самая ранняя сверху.

 ЧТО ДОЛЖНО БЫТЬ
id | date add
1  |  17
1  |  16
1  |  15
2  |  17
2  |  16 
2  |  15

 КОД SQL
SELECT t1.*
    FROM table.history t1
    where (select count(*) 
           from table.history t2
           where t1.id = t2.id
           and t2.date_add>t1.date_add
           and date_add >= now() - INTERVAL '1 day' group by id) <3
 limit 20

Ответы (0 шт):