Das liefert die höchste ID, nicht aber die Anzahl der Datensätze.
Das ist mir klar, aber es ist genau das, was der OP haben will, die höchste ID. Das er nur per count() an die verlässliche Anzahl kommt, weiss er ja jetzt.
Da du aber nicht wissen kannst, ob der OP dafür sorgt, dass die IDs immer fortlaufend und ohne Lücken sind, kannst du auch nicht wissen, ob die höchste ID nicht der Anzahl der User entspricht.