05/05/2011, 11:39
|
| Moderador criollo | | Fecha de Ingreso: noviembre-2007 Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años Puntos: 2658 | |
Respuesta: que es mas rapido? COUNT(*) no es indicativo de campos, sino de registros. Cuando usas COUNT(*) no verifica el estado de los campos sino la existencia de registros. En este caso lo que hace es contar el resultado de la consulta, pero es la consulta la que verifica las condiciones.
En cambio, cuando usas COUNT(campo), MySQL debe recuperar valores no NULL, lo que puede implicar que obtenga más registros de los que cuenta.
En cualquier caso siempre es mejor usar COUNT(*) con una consulta eficiente, optimizada.
Lo que no tiene sentido es usar LIMIT en una consulta que sólo tenga un COUNT en el SELECT, porque como COUNT() es una cláusula de agrupamiento, siempre te devolverá un sólo registro si no hay un GROUP BY presente.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |