Foros del Web » Programando para Internet » PHP »

La consulta más rápida en MySQL y PHP

Estas en el tema de La consulta más rápida en MySQL y PHP en el foro de PHP en Foros del Web. Lo único que quiero saber es cual es la forma más rápida de consultar MySQL mediante PHP, hasta ahora lo he hecho así: Código: $i=0; ...
  #1 (permalink)  
Antiguo 06/03/2002, 18:04
Avatar de MariHo  
Fecha de Ingreso: abril-2001
Mensajes: 156
Antigüedad: 16 años, 8 meses
Puntos: 1
La consulta más rápida en MySQL y PHP

Lo único que quiero saber es cual es la forma más rápida de consultar MySQL mediante PHP, hasta ahora lo he hecho así:

Código:
$i=0;
while ($id = @mysql_result($nResult,$i,0))
{
    echo @mysql_result($nResult,$i,$0)
}
con el mysql_result , pero se que hay otras formas de consultar la base de datos mucho más rápida como: mysql_fetch_object , mysql_fetch_array() , mysql_fetch_row() , etc.


La pregunta es: ¿Cual es la forma más rápida de consultar la base de datos?

Si pudieran darme un pequeño ejemplo de su funcionamiento, parecido al que yo dí, un bucle y un echo seria perfecto.


Gracias por la ayuda


MariHo
;¬)
  #2 (permalink)  
Antiguo 06/03/2002, 18:49
Avatar de Aleph  
Fecha de Ingreso: agosto-2001
Ubicación: Kenolandia
Mensajes: 1.061
Antigüedad: 16 años, 3 meses
Puntos: 3
Re: La consulta más rápida en MySQL y PHP

Te contestaria, pero Webstudio te daria una respuesta mucho mejor .

Saludos.

PD: Perdon por el mensaje, pero no podia dejarlo pasar

<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td align="center"><a href="http://www.cicpm.org" target="_blank"><img src="http://www.amsystems.com.ar/imagenes/fw/firma2.gif" border="0"></a></td></tr></table>
  #3 (permalink)  
Antiguo 07/03/2002, 07:57
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Re: La consulta más rápida en MySQL y PHP

Ante todo ... para agilizar las consultas .. en el query .. has de llamar a los campos afectados . y no a todos los que tienes en tu tabla.

Ejemplo:
NO usar este tipo de consultas, cuando en realidad solo necesitamos algunos campos de la tabla y no todos.

Hacemos una consulta .. a una tabla, esta tiene 3 campos: campo1,campo2,campo3 y necesitamos usar solo campo1 y campo3 para el ejemplo:

$consulta = mysql_query(&quot;SELECT * FROM tabla&quot;) ;
Esto no seria correcto, el comodin (willcard) &quot;*&quot; llama a todas los campos de la tabla .. por lo tanto obtenemos datos superfluos q no usaremos.

$consulta = mysql_query(&quot;SELECT campo1,campo3 FROM tabla&quot;) ;
Esto seria mas correcto y mas rapido la consulta. En este caso solo se llaman a los campos q necesitamos.

Un saludo,

pd: lo mas seguro que ya conocieras esto, pero no esta de mal pornerlo ...
  #4 (permalink)  
Antiguo 07/03/2002, 09:17
Avatar de Webstudio
Colaborador
 
Fecha de Ingreso: noviembre-2001
Ubicación: 127.0.0.1
Mensajes: 3.499
Antigüedad: 16 años
Puntos: 68
Re: La consulta más rápida en MySQL y PHP

Lo que dice Cluster es correcto.

Otro método para &quot;optimizar&quot; una cosulta, es utilizar mysql_fetch_row() ya que el array devuelvo por esta funcion, ocupa la mitad que el obtenido con mysql_fetch_array().

Eso si, es muy contraproducente para nuestros scripts el tener que acceder a los campos de la consulta, mediante números y no mediante los nombres de los campos. Pero buneo, es otro método para ocupar menos espacio en memoria.

Aparte, el método que utilizas para recorrer los resultados, no me parece del todo correcto, me parece que debes estar perdiendo el primero de los registros (aparte de tener un par de errores de sintaxis).

Yo te recomendaría que utilices algo como :

while($row = mysql_fetch_array($nResult))
{
// Aqui utilizas las variables desde el $row
}

Saludos.

<hr><font size=2 face="verdana">- Pablo Daniel Rigazzi (Webstudio)
<font size=1 color="#333333">COORDINADOR PROYECTO REGIONALIZACION ARGENTINA
Visita <a href="http://www.web-studio.com.ar" target="_blank">Web Studio</a> - Tutoriales Photoshop</fo
  #5 (permalink)  
Antiguo 07/03/2002, 09:24
Avatar de MariHo  
Fecha de Ingreso: abril-2001
Mensajes: 156
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: La consulta más rápida en MySQL y PHP

Si, gracias ya conocía ese &quot;truco&quot;, yo ya tengo tiempo programando en PHP y ASP, pero ahorita estoy queriendo hacer mis códigos lo más eficientes posible.


Siempre es bueno hacer nuestros códigos lo más rápidos y legibles posible, es buena costumbre, por eso la pregunta.



MariHo
;¬)
  #6 (permalink)  
Antiguo 07/03/2002, 09:36
Avatar de MariHo  
Fecha de Ingreso: abril-2001
Mensajes: 156
Antigüedad: 16 años, 8 meses
Puntos: 1
Re: La consulta más rápida en MySQL y PHP

Mira Webstudio respondimos casi al mismo tiempo, si el código que te di tiene algunos errores, lo correcto es:
Código:
$i=0;
while ([email protected]_result($nResult,$i,0))
{
echo @mysql_result($nResult,$i,0);
$i++;
}

siempre lo he utilizado sin problemas, pero voy a hacerlo ahora con mysql_fetch_array($nResult) .


Un truco que utilizo para utilizar los índices de las consultas es crear variables.

$iId=0
$iTitular=1

Código:
while ([email protected]_result($nResult,$i,0))
{
echo @mysql_result($nResult,$i,$iId);
echo @mysql_result($nResult,$i,$iTitular);
$i++;
}

porque me ha pasado que tengo que borrar un campo en la base de datos y tengo que actualizar un montón de índices...


Gracias


MariHo
;¬)
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 13:15.