Ver Mensaje Individual
  #7 (permalink)  
Antiguo 01/03/2011, 16:22
Avatar de urtcor
urtcor
 
Fecha de Ingreso: agosto-2010
Mensajes: 15
Antigüedad: 13 años, 8 meses
Puntos: 0
Busqueda Respuesta: contar los valores repetidos de una tabla?

Hola!
Antes que nada gracias por vuestro tiempo Leo y Pancho ;)
La verdad que si que tenia que leer más sobre sql..lo que pasa que me metí en php y pensaba que sql era más complementario y tal.. y veo que es completamente diferente..y vamos todo un lenguaje..

He provado lo que me habéis dicho los dos pero no consigo mostrar el nombre de usuario :S no se si es que lo hago mal o la consulta que quiero hacer no se puede... :S

El metodo de Leo quedaria asi:
Código PHP:
$query="SELECT comentarios.idUsuario, count(*) as TotalComentarios 
FROM comentarios
INNER JOIN usuarios ON comentarios.idUsuario = usuarios.usuario
GROUP by comentarios.idUsuario"

seria contar todas las idUsuario de la tabla comentarios, luego poner que el idUsuario de la tabla comentarios sea igual a el usuario de la tabla usuarios, y ordenarlo todo por idUsuario de la tabla comentarios.

De esta forma no me muestra nada :S y he provado variando cosas pero no me funciona :S
_____

El codigo de Pancho, me pasa algo distinto.
Me qedo asi:
Código PHP:
$query="SELECT comentarios.idUsuario,count(*) as TotalComentarios 
FROM comentarios LEFT JOIN usuarios ON comentarios.idUsuario = usuarios.usuario
GROUP by comentarios.idUsuario"

Y poniendo eso, es curioso pero solo me escribe en la web el numero de comentarios, pero no me escribe nada en la parte de usuario. (depende también de la variable que recoja para mostrar). Si vuelvo a mostrar idUsuario me sale otra vez el idUsuario.

Supongo que también es importante la manera de mostrar los resultados. Primero defino un array:
$arrTOTALES = array();
Luego de la peticion hago
$resultado = mysql_query ($query, $dbConn);
while ($row=mysql_fetch_assoc($resultado)){
array_push( $arrTOTALES,$row );
}

Y los escribo en la parte correspondiente con
<? foreach ($arrTOTALES as $totales) { ?>
<? echo $totales['idUsuario']?> /// para la parte de idUsuario o en caso de querer mostrar el nombre de usuario, q es lo q no me sale, pongo <? echo $totales['usuario']?>
<? echo $totales['TotalComentarios']?> /// para mostrar el numero total de comentarios

Bueno en principio tendría que funcionar si me muestra la id y el numero de comentarios.. si canviar casi nada..pero no funciona :S

Muchas gracias, a ver si consigo hacer esto y me pongo ya con los manuales..xD
un saludo.