mysql má na to "cheat":
select *
from mytable
group by cid;
To je vše, co potřebujete, protože v mysql vám to umožňuje ne agregovat sloupce neseskupené podle (jiné databáze by vyvolaly chybu syntaxe), v takovém případě vypíše pouze první výskyt každé hodnoty (hodnot) podle skupiny. Upozorňujeme však, že to nezaručuje způsob ve kterém je určen "první" výskyt (bude to jen způsob načítání řádků)
Pokud chcete konkrétní první výskyt, nejprve seřaďte, poté použijte cheat po skupinách:
select *
from (
-- order by the "time" column descending to get the "most recent" row
select * from mytable order by time desc
) x
group by cid