Otimização de consulta em tabela com muitos registros em PHP

  • Autor Autor ubuwolf
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
ubuwolf

ubuwolf

Iota
Verificado
Verificación en dos pasos activada
Amigos tengo esta consulta.... el problema es que la tabla seo tiene muchos registros... como puedo hacer para optimizar esta consulta?

<?
$resk="SELECT * FROM `seo` ORDER BY RAND() LIMIT 1,20";
$DatosCapitulo1 = $db->fetchAll($resk);
if(!empty($DatosCapitulo1)){
foreach ($DatosCapitulo1 as $DatosCapitulo){
$u = $DatosCapitulo['url'];
$k = $DatosCapitulo['KEY'];
?>
<a href="<?=$u?>" style="text-decoration:none"><?echo utf8_encode($k) . "</a> - ";
}
}

?>
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Cuanto te tarda en ejecutarse y cuantos registros tenes? La tabla es myisam? Me hubieras preguntado por face decía como 😛, pero respondeme eso y te digo como optimizarla
 
te mando esos datos por facebook
 
Estimado, puedes hacer más recursiva la consulta consultando solo las columnas a usar

PHP:
 $resk="SELECT * FROM `seo` ORDER BY RAND() LIMIT 1,20";

por

PHP:
 $resk="SELECT url, key FROM `seo` ORDER BY RAND() LIMIT 1,20";

puedes comprobarlo en tu Base de datos...

Ahora bien ¿Por qué querer optimizar una consulta de base de datos de un sitio con no excesivas cantidades de registros/consultas (5.000.000 es poco)

Creo que tu consulta va más por la comprezion gzip, caché de contenido, optimización de imágenes y minimización de css/js (si lo que quieres es que cargue más rápido)
 
Estimado, puedes hacer más recursiva la consulta consultando solo las columnas a usar

PHP:
 $resk="SELECT * FROM `seo` ORDER BY RAND() LIMIT 1,20";

por

PHP:
 $resk="SELECT url, key FROM `seo` ORDER BY RAND() LIMIT 1,20";

puedes comprobarlo en tu Base de datos...

Ahora bien ¿Por qué querer optimizar una consulta de base de datos de un sitio con no excesivas cantidades de registros/consultas (5.000.000 es poco)

Creo que tu consulta va más por la comprezion gzip, caché de contenido, optimización de imágenes y minimización de css/js (si lo que quieres es que cargue más rápido)


exacto! lo que quiero es optimizar la carga de la web... como deberia hacer?
 
sitio programado [MENTION=28423]heyfranks[/MENTION]
 
Una regla general es: es mejor 10 consultas rapidas que una lenta.
si no vas a usar todos los datos de una tabla consulta solo las columnas que necesitas
 
Voltar
Topo