rendered paste bodymysql> select * from groups_announcements;+----------+-----------------+| group_id | announcement_id |+----------+-----------------+| 4 | 12 || 4 | 13 || 5 | 14 || 5 | 15 |+----------+-----------------+4 rows in set (0.00 sec)mysql> select announcement_id, time_posted from announcements;+-----------------+---------------------+| announcement_id | time_posted |+-----------------+---------------------+| 11 | 2006-06-18 14:22:05 || 12 | 2006-07-13 10:07:57 || 13 | 2006-07-13 10:11:04 || 14 | 2006-07-13 12:19:12 || 15 | 2006-07-13 12:21:01 |+-----------------+---------------------+5 rows in set (0.00 sec)mysql> select group_id, groups_announcements.announcement_id, time_posted from announcements left join groups_announcements using (announcement_id);+----------+-----------------+---------------------+| group_id | announcement_id | time_posted |+----------+-----------------+---------------------+| NULL | NULL | 2006-06-18 14:22:05 || 4 | 12 | 2006-07-13 10:07:57 || 4 | 13 | 2006-07-13 10:11:04 || 5 | 14 | 2006-07-13 12:19:12 || 5 | 15 | 2006-07-13 12:21:01 |+----------+-----------------+---------------------+5 rows in set (0.00 sec)select group_id, groups_announcements.announcement_id, time_posted from announcements as A1 left join groups_announcements using (announcement_id) where time_posted = (select max(A2.time_posted) from announcements AS A2 where A1.announcement_id = A2.announcement_id);+----------+-----------------+---------------------+| group_id | announcement_id | time_posted |+----------+-----------------+---------------------+| NULL | NULL | 2006-06-18 14:22:05 || 4 | 12 | 2006-07-13 10:07:57 || 4 | 13 | 2006-07-13 10:11:04 || 5 | 14 | 2006-07-13 12:19:12 || 5 | 15 | 2006-07-13 12:21:01 |+----------+-----------------+---------------------+5 rows in set (0.00 sec)