Título: [Resuelto] JOIN query y mysqli_num_rows Publicado por: gAb1 en 22 Octubre 2014, 22:51 pm Hola, me gustaría saber como se usa el count cuando necesito juntar varias sentencias en una misma consulta.
Estoy haciendo una lista de fotos con likes: primero necesito obtener todas las imagenes de una tabla, segundo comprobar (row count) si el usuario ya le dio like a la imagen sacando el id de la imagen y por ultimo otro row count para saber cuantos likes tiene la imagen, usando el mismo id de imagen. Tengo algo así, me falta el count, no estoy seguro de como hacerlo y si usar INNER JOIN: Código
Tengo un prepared statement y luego con un foreach imprimo todas las imagenes. Pero antes de empezar a imprimir la lista de fotos tengo que comprobar si el usuario ya le dio like a la imagen para cambiar el boton (like o unlike) y sacar el numero total de likes. Tampoco se, en este caso de juntar tablas, como comprobar el row count, normalmente uso mysqli_num_rows($stmt); pero ahora no se si esto funciona asi. Código
Si hay alguna forma mejor de hacer esto me gustaría saberla. Gracias! Título: Re: JOIN query y mysqli_num_rows Publicado por: dimitrix en 26 Octubre 2014, 00:10 am Vale, perdona, pero hoy estoy espeso y puesto que hace tres días que nadie te comenta, te dejaré varias info por si te interesan...
Puedes hacer esto, si el valor $ID es 100...: Código
Con esto, al existir sólo una tupla/celda, le estarás dando la cantidad de imágenes que tiene ese post al valor "total_imagenes", en el que caso de que no existieran, el valor retornado sería 0. Hoy estoy un poco espeso... Título: Re: JOIN query y mysqli_num_rows Publicado por: gAb1 en 26 Octubre 2014, 12:28 pm Gracias por la respuesta, toda ayuda es bien recibida.
Si no me equivoco ¿eso es una subquery? Código
Lo que hace esa query es, obtener todo de la tabla imagenes (user_uploads) y hacer un count de los likes que tiene cada una de las imágenes, ¿no? Mi única duda aquí es, si la imagen de la id seleccionada seria la misma id usada para hacer el COUNT, no vaya a ser que muestre los likes de una imagen en otra :P Y en el código php sería poner esto? Código
Gracias! Edito: Vale ya he conseguido que funcione: Código
Sobre el rendimiento, ¿será mucha carga para el servidor hacer esos COUNT? (cuando hayan bastante entradas en la tabla) Gracias! Título: Re: JOIN query y mysqli_num_rows Publicado por: dimitrix en 27 Octubre 2014, 03:13 am ¿Define bastante?
Si estás en un windows, hasta 300,000 ni tendrás problemas, si estás en un VPS que seguramente usará linux ubunut/centOS tranquilamente puedes tener 3 millones... Me alegro de haber ayudado... aunque llevara unas cervecitas xDDDD Título: Re: JOIN query y mysqli_num_rows Publicado por: gAb1 en 27 Octubre 2014, 22:29 pm Eso son muchas!! hehehe
Por supuesto xD Lo marco como solucionado. |