First, find out the last timestamp for each convo_id
:
SELECT convo_id,
MAX(time) AS time
FROM Message
GROUP BY convo_id
Then, use these values to filter the records of the original table:
SELECT Message.*
FROM Message
JOIN (SELECT convo_id,
MAX(time) AS time
FROM Message
GROUP BY convo_id)
USING (convo_id, time)
If you have SQLite 3.7.11 or later, you can do everything in a single step:
SELECT *,
MAX(time)
FROM Message
GROUP BY convo_id