Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Sql_calc_rows vs count

Estas en el tema de Sql_calc_rows vs count en el foro de Mysql en Foros del Web. Hola chicos Esa es la pregunta-retroalimentacion, ahora ustedes diran depende en que la use Bueno, yo hago un SELECT con WHERE, normalmente yo uso PHP ...
  #1 (permalink)  
Antiguo 17/12/2010, 22:23
 
Fecha de Ingreso: febrero-2005
Mensajes: 626
Antigüedad: 19 años, 9 meses
Puntos: 10
Sql_calc_rows vs count

Hola chicos

Esa es la pregunta-retroalimentacion, ahora ustedes diran depende en que la use

Bueno, yo hago un SELECT con WHERE, normalmente yo uso PHP y uso mysql_num_rows para este fin pero posiblemente use mysql_unbuffered_query, para hacer la consulta, por lo que no puedo usar mysql_num_rows, bueno, pero no me voy a llevar el hilo de conversacion a PHP

Todos hemos necesitado hacer alguna consulta sql conociendo si hay una fila solamente con esa coincidencia, seria util obtener un valor booleano (un cero o un uno) no?

Pongamos un ejemplo tengo un sistema de autenticacion en el WHERE va el user y el password por ejemplo, si es 1 el numero de filas, el usuario le atino, si es 0, pues no concuerdan esos dos campos

Ahora las preguntas para la retroalimentacion

1. que es mas rapido, que gasta menos memoria SQL_CALC_ROWS o COUNT para este tipo de situaciones?

2. conviene cachear la consulta?

Encontre en google este tema, lo cual ha sido muy discutido

http://forums.devnetwork.net/viewtop...313f6&start=15

http://www.mysqlperformanceblog.com/...lc_found_rows/

http://www.phpdevblog.net/2009/06/my...unt-query.html

Saludos, espero sus respuestas y comentarios
  #2 (permalink)  
Antiguo 17/12/2010, 22:43
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 15 años, 4 meses
Puntos: 150
Respuesta: Sql_calc_rows vs count

Interesante este tipo de optimizaciones, pero segun veo en las pruebas de tu segundo enlace, con buenos indices en los cambios el select count(*) gana por goleada...

Sobre lo de cachear consultas, no se si te refieres al "autocacheo" que hace Mysql de consultas muy concurrentes o de cachear todo el codigo php a un .txt por ejemplo... Logicamente si es una consulta muy pesada y que no varíe en varios minutos-horas-dias conviene cachear lo maximo posible.
  #3 (permalink)  
Antiguo 18/12/2010, 16:07
 
Fecha de Ingreso: febrero-2005
Mensajes: 626
Antigüedad: 19 años, 9 meses
Puntos: 10
Respuesta: Sql_calc_rows vs count

Asi es lo que visto es que es mas eficiente el COUNT(*) que una funcion dedicada especificamente para esto

Espero sus comentarios

Etiquetas: count
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 20:18.