elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: [AIO elhacker.NET 2015] Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  [Pregunta]: Optimización de una consulta.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Pregunta]: Optimización de una consulta.  (Leído 297 veces)
MiguelCanellas


Desconectado Desconectado

Mensajes: 558



Ver Perfil
[Pregunta]: Optimización de una consulta.
« en: 3 Julio 2020, 05:14 »

Buenas noches,

básicamente tengo una consulta que llama de una base de datos todos los registros, generalmente uso este tipo de consultas para obtener la cantidad total y no para otra cosa, que tampoco hago un foreach (recorro cada dato) imaginensen 75,000 registros... me explota la computadora y de paso el servidor  :xD

por ejemplo..
Código
  1. $cantidad_total = count(registros::Todos());
  2. echo 'En total hay '.($cantidad_total).' registros!';
  3.  

¿Habrá algún problema si un día hay 500,000 registros u obviamente muchos más?


En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.494



Ver Perfil WWW
Re: [Pregunta]: Optimización de una consulta.
« Respuesta #1 en: 3 Julio 2020, 10:19 »

Lo que tendrías que hacer es reducir la consulta en sí. No sacar todos los datos sino solo la cuenta total.

No es lo sacar todo y luego contar.
Código
  1. SELECT * FROM usuarios


Que contar directamente.
Código
  1. SELECT COUNT(*) as count FROM usuarios

Con ese ultimo, haces que MySQL (u otro motor) solo cuente y no tenga que sacar cada cell ende reduces enormemente la carga.

Saludos


En línea

MiguelCanellas


Desconectado Desconectado

Mensajes: 558



Ver Perfil
Re: [Pregunta]: Optimización de una consulta.
« Respuesta #2 en: 6 Julio 2020, 02:05 »

Lo que tendrías que hacer es reducir la consulta en sí. No sacar todos los datos sino solo la cuenta total.

No es lo sacar todo y luego contar.
Código
  1. SELECT * FROM usuarios


Que contar directamente.
Código
  1. SELECT COUNT(*) as count FROM usuarios

Con ese ultimo, haces que MySQL (u otro motor) solo cuente y no tenga que sacar cada cell ende reduces enormemente la carga.

Saludos

Gracias! ya tengo todo funcionando...
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines