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

¿Es COUNT más rápido que extraer los registros y contar en código?

Si sabe que necesita los datos, continúe, extráigalos y cuéntelos en código. Sin embargo, si solo necesita el conteo, es significativamente más rápido extraer el conteo de la base de datos que recuperar las filas. También es una práctica estándar extraer solo lo que necesita.

Por ejemplo, si está contando todas las filas de una tabla, la mayoría de las implementaciones de bases de datos no necesitan mirar ninguna fila. Las tablas saben cuántas filas tienen. Si la consulta tiene filtros en el where cláusula y puede usar un índice, nuevamente no necesitará mirar los datos de las filas reales, solo cuenta las filas del índice.

Y todo esto sin contar los menos datos transferidos.

Una regla general sobre las velocidades de la base de datos es seguir adelante y probarlo usted mismo. Las reglas generales no siempre son un buen indicador. Por ejemplo, si la tabla tuviera 10 filas y solo unas pocas columnas, podría extraer todo de todos modos en caso de que lo necesitara, ya que 2 viajes de ida y vuelta a la base de datos superarían el costo de la consulta.