FOUND_ROWS de MySQL devuelve 0

Introducción

Estuve haciendo algunas pruebas con MySQL y la función FOUND_ROWS. Tuve algunos inconvenientes porque a veces sale la sorpresa de que FOUND_ROWS de MySQL devuelve 0 o 1 filas, o resultados inesperados. Vamos a ver cómo solucionarlo.

Solución al error de que FOUND_ROWS de MySQL devuelve 0 filas

Reiniciar servicio

Suena como la solución de todos los informáticos pero es la verdad. Hay que reiniciar el demonio de MySQL. Si estamos en Windows vamos a Servicios, buscamos mysql, doble click; en la ventana que se abre hacemos click en Detener, esperamos, y luego hacemos click en Iniciar.

En Linux Ubuntu y tal vez algunos derivados me parece que es con el comando:

sudo service mysql restart

Con eso debería ser suficiente. Si sigue sin solucionarse hay que seguir leyendo…

Índices

No sé por qué pero debe haber una razón muy buena, y es que FOUND_ROWS devolverá 1 en caso de que nuestra tabla tenga un índice y se esté usando dicho índice al hacer la consulta.

Posible alternativa

Como sabemos, FOUND_ROWS cuenta las filas que habría si no limitásemos con LIMIT. Lo que podemos hacer es hacer la consulta por separado implementando un COUNT(*). Tal vez no es lo mejor en cuanto a rendimiento pero es una solución que funciona perfectamente.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *