Foros del Web » Programando para Internet » PHP »

Encuesta: Formas de contar filas y tiempos generados

Estas en el tema de Encuesta: Formas de contar filas y tiempos generados en el foro de PHP en Foros del Web. Hola, estoy trabajando en un proyecto y me interesa mucho la rapidez con la que se realizan las consultas en una base de datos, en ...
  #1 (permalink)  
Antiguo 09/03/2011, 02:57
Avatar de sigher  
Fecha de Ingreso: enero-2011
Mensajes: 46
Antigüedad: 13 años, 3 meses
Puntos: 0
Encuesta: Formas de contar filas y tiempos generados

Hola, estoy trabajando en un proyecto y me interesa mucho la rapidez con la que se realizan las consultas en una base de datos, en algunas ocasiones tengo que contar por ejemplo la cantidad de registros que ha hecho el usuario X
Yo personalmente conozco dos, pero no se cual es la mas eficiente o si hay alguna forma mejor:

1º forma:
Código PHP:
Ver original
  1. $obterner = "select * from articulos where usuario =  '1'";
  2. $q_obtener = mysql_query($obtener);
  3. $r_obtener = mysql_num_rows($q_obtener);
  4. echo $r_obtener." registros";

2º forma:
Código PHP:
Ver original
  1. $obtener = "select count(*) from articulos where usuario =  '1'";
  2. $q_obtener = mysql_query($obtener);
  3. $r_obtener = mysql_num_rows($q_obtener);
  4. echo $r_obtener." registros";

Aprovecho tambien para preguntar, hay alguna manera de saber el tiempo que tarda en generarse una consulta o una serie de X consultas de un archivo?

Espero ansioso vuestras respuestas.
  #2 (permalink)  
Antiguo 09/03/2011, 03:32
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 17 años, 5 meses
Puntos: 32
Respuesta: Encuesta: Formas de contar filas y tiempos generados

Creo que en la segunda te puedes ahorrar el mysql_num_rows
Si pones la consulta asi:

select count(id) as cuantos from articulos where usuario = '1'";

Luego solo tiene que mostrar el valor "cuantos"

Saludos.
  #3 (permalink)  
Antiguo 09/03/2011, 03:41
Avatar de sigher  
Fecha de Ingreso: enero-2011
Mensajes: 46
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Encuesta: Formas de contar filas y tiempos generados

En la segunda me he confundido, es:
Código PHP:
Ver original
  1. $obtener = "select count(*) from articulos where usuario =  '1'";
  2. $q_obtener = mysql_query($obtener);
  3. $r_obtener = mysql_result($q_obtener);
  4. echo $r_obtener." registros";
  #4 (permalink)  
Antiguo 09/03/2011, 05:28
Avatar de xalupeao  
Fecha de Ingreso: mayo-2008
Ubicación: Santiago, Chile
Mensajes: 749
Antigüedad: 15 años, 11 meses
Puntos: 12
Respuesta: Encuesta: Formas de contar filas y tiempos generados

primero que todo si estas en rapidez usa mysqli y no mysql. Si estas haciendo un conteo no es necesario rescatar todos los campos por ende realiza un count(id) o similar.

@gogupe creo que podria tener razon en vez de un num_rows podrias usar un fetch_array pero hay si que no sabria decir cual es mas rapido.

pero bueno comienza por usar mysqli y el campo id recuerda debe ser un PRIMARY KEY las consultas a tablas que tengan indice son mucho mas rapidas
__________________
Hosting en Chile en Silverhost - La solución en Hosting en Chile.

Etiquetas: encuesta, filas, formas
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




La zona horaria es GMT -6. Ahora son las 22:53.