Dokumentacja MySQL mówi
A jeśli nie masz danych, to po prostu zwraca obie wartości jako NULL.
Jeśli chcesz, aby drugie zapytanie zwróciło również pusty zbiór wyników, musisz odfiltrować wartości NULL, na przykład za pomocą klauzuli HAVING, której możesz użyć z funkcjami agregującymi:
SELECT DISTINCT u_id, MAX(timestamp) as time FROM my_table GROUP BY u_id HAVING time IS NOT NULL;