Wierzę, że jeśli grupujesz według obu id
i date
dostaniesz to, czego szukasz. czyli:
SELECT id
FROM table
GROUP BY id, `date`
HAVING COUNT(*) = 3 /* Since number of days are 3 */
Pamiętaj, że zakłada to, że otrzymujesz liczbę dni (3 w tym przypadku) na podstawie pewnego zakresu dat z innego miejsca.