Yanlış anlamadıysam yapmaya çalıştığın şey önce sıralama işleminin (ORDERY BY) sonra da gruplama işleminin (GROUP BY) çalışmasını sağlamak. Böyle bir durumu gerçeklemek için SQL dünyasında "Aggregates" adında bir "Query Pattern" mevcut.
Ayrıntılı olarak analiz etmedim ancak aşağıdaki sorgudan yola çıkara bir yere varmaya çalışmak sana yardımcı olacaktır:
SELECT s1.* from sayac AS s1
LEFT JOIN sayac s2 ON s1.ip=s2.ip AND s1.saat<s2.saat
WHERE s2.ip IS NULL