sql >> Base de Datos >  >> RDS >> Mysql

Doctrine Query para encontrar el número total de resultados en MySQL con LIMIT

Hay una función de paginación, que está integrada en 2.2, y hace algo similar a lo que estás buscando:

https://www.doctrine -project.org/projects/doctrine-orm/en/latest/tutorials/pagination.html#pagination

Pero no creo que use SQL_CALC_FOUND_ROWS :realiza dos (o tres, dependiendo de cómo lo configures) consultas separadas para obtener los resultados, y esa suele ser la forma correcta de proceder.

Si realmente insiste en usar la función MySQL, creo que necesita usar SQL sin procesar y un mapeo de conjunto de resultados. He aquí un ejemplo:

Recuento de filas en Doctrine 2

En una nota completamente separada, prueba si SQL_CALC_FOUND_ROWS realmente vale la pena usarlo para su consulta particular. Count está bien optimizado en MySQL para consultas como la que estás haciendo. Ver esta pregunta en particular:

¿Cuál es más rápido? SELECCIONE SQL_CALC_FOUND_ROWS DE `tabla`, o SELECCIONE COUNT(*)