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

 

 


Tema destacado: Curso de javascript por TickTack


+  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 2,652 veces)
Leguim


Desconectado Desconectado

Mensajes: 720



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

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.855



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

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

Leguim


Desconectado Desconectado

Mensajes: 720



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

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:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con consulta PHP para darle seguridad y optimización
PHP
ceysmar 2 2,728 Último mensaje 10 Noviembre 2017, 17:10 pm
por ceysmar
[Pregunta]: Detectar acentos en consulta « 1 2 3 »
Bases de Datos
Leguim 21 8,095 Último mensaje 27 Agosto 2019, 05:43 am
por Leguim
[Pregunta]: ON en una consulta con dos datos
Bases de Datos
Leguim 2 1,905 Último mensaje 8 Septiembre 2019, 01:52 am
por Leguim
[Pregunta]: Ejecutar esta consulta constantemente
PHP
Leguim 2 4,137 Último mensaje 15 Noviembre 2019, 00:17 am
por [u]nsigned
[Pregunta]: ¿Ejecutar una consulta SQL a cada momento?
Desarrollo Web
Leguim 1 2,890 Último mensaje 4 Noviembre 2019, 09:21 am
por Agente Naranja
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines