Es ist lustig, wie das Schreiben einer Frage zum Nachdenken anregt, und es hilft tatsächlich sehr dabei, sich eine Lösung für Ihr eigenes Problem vorzustellen.
Ich konnte dieses Problem lösen, indem ich einfach den Paginierungsteil der Abfrage zu einer Unterabfrage meiner Hauptabfrage anstatt zur Hauptabfrage selbst hinzufügte.
Anstatt beispielsweise Folgendes zu tun:
SELECT client.id, client.name ...
FROM clients AS client
LEFT JOIN client_account_types AS cat ON client.id = cat.client_id
FULL JOIN account_types AS at ON cat.account_type_id = at.id
ORDER BY client.name ASC
LIMIT 10 OFFSET 30;
Ich mache das:
SELECT client.id, client.name ...
FROM (
SELECT * FROM clients
ORDER BY name ASC
LIMIT 10 OFFSET 0
) AS client
LEFT JOIN client_account_types AS cat ON client.id = cat.client_id
FULL JOIN account_types AS at ON cat.account_type_id = at.id;
Hoffe, das hilft auch anderen Leuten.