Вярвам, че ако групирате и по id
и date
ще получите това, което търсите. т.е.:
SELECT id
FROM table
GROUP BY id, `date`
HAVING COUNT(*) = 3 /* Since number of days are 3 */
Имайте предвид, че това предполага, че получавате броя дни (3 в този случай) въз основа на някакъв период от време от някъде другаде.