Sie können SQL_CALC_FOUND_ROWS so verwenden
SELECT SQL_CALC_FOUND_ROWS * FROM users limit 0,5;
Es erhält die Zeilenanzahl vorher Anwenden einer LIMIT-Klausel. Es braucht eine weitere Abfrage, um die Ergebnisse abzurufen, aber diese Abfrage kann einfach sein
SELECT FOUND_ROWS()
und daher müssen Sie Ihre komplizierte Abfrage nicht wiederholen.