Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Consulta SQL contando elementos

Estas en el tema de Consulta SQL contando elementos en el foro de Bases de Datos General en Foros del Web. Hola tengo un problema con una consulta SQL que no se como hacerla. Os explico, Tengo dos tablas TemaForo y MsnForo con estos campos en ...
  #1 (permalink)  
Antiguo 30/10/2004, 14:59
 
Fecha de Ingreso: septiembre-2004
Mensajes: 4
Antigüedad: 19 años, 7 meses
Puntos: 0
Consulta SQL contando elementos

Hola tengo un problema con una consulta SQL que no se como hacerla.

Os explico,

Tengo dos tablas TemaForo y MsnForo con estos campos en cada una de las tablas:

- TemasForo (CodTema, Nombre, etc..)
Almacena los temas creados en el un Foro.

- MsnForo (CodMsn, Tema, Fecha, etc..)
Almacena los mensajes de cada uno de los temas.

Las tablas estan relacionadas por TemasForo.CodTema = MsnForo.Tema

Ahora el problema es, necesito hacer una consulta que me muestre un listado de Temas, con el numero de mensajes que tiene cada tema y ordenado por fecha.

Ejemplo

Tema --- Mensajes -- Fecha

Tema 2 -- 5 -- 25/10/2004
Tema 1 -- 3 -- 22/10/2004
Tema 5 -- 7 -- 21/10/2004
Tema 3 -- 2 -- 18/10/2004


A ver si alguien me puede echar una mano.

Gracias
  #2 (permalink)  
Antiguo 30/10/2004, 15:20
 
Fecha de Ingreso: octubre-2004
Ubicación: COLOMBIA
Mensajes: 240
Antigüedad: 19 años, 6 meses
Puntos: 3
Exclamación

SELECT Tema, Mensajes, Fecha FROM TABLA_QUE_UTILICES
ORDER BY Fecha;
OJALA TE SIRVA CHAO
  #3 (permalink)  
Antiguo 30/10/2004, 15:52
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Prueba con esta instrucción:

SELECT tema, count(codmsn) as numero_mensajes,fecha FROM msnforo INNER JOIN temasforo ON temasforo.codtema=temas.tema GROUP BY tema, fecha ORDER BY fecha
  #4 (permalink)  
Antiguo 30/10/2004, 23:35
 
Fecha de Ingreso: septiembre-2004
Mensajes: 4
Antigüedad: 19 años, 7 meses
Puntos: 0
Gracias, claudiovega pero el resultado que me da no es el esperado.
Te comento.

Con tu consulta me sale un listado con todos los mensajes, no con la suma de mensajes de cada tema.
Ejemplo

Tema -- Nº Mensajes --- Fecha

Tema 3 --- 1 --- 28/10/2004
Tema 3 --- 1 --- 29/10/2004
Tema 3 --- 1 --- 29/10/2004
Tema 2 --- 1 --- 30/10/2004
Tema 1 --- 0 --- 30/10/2004 (esta fila no sale)


Cuando lo que yo busco es que me salga un listado de temas con la suma de mensajes que tiene el tema

Ejemplo de la tabla anterior seria:

Tema -- Nº Mensajes --- Fecha

Tema 3 --- 3 --- 29/10/2004
Tema 2 --- 1 --- 30/10/2004
Tema 1 --- 0 --- 30/10/2004


Espero haberme explicado bien.

Un saludo y gracias.
  #5 (permalink)  
Antiguo 02/11/2004, 06:13
 
Fecha de Ingreso: septiembre-2004
Mensajes: 35
Antigüedad: 19 años, 7 meses
Puntos: 0
A ver si esta te sirve:

SELECT tema, count(codmsn) as numero_mensajes,max(fecha) as ultima_fecha
FROM msnforo
INNER JOIN temasforo ON temasforo.codtema=temas.tema
GROUP BY tema
ORDER BY max(fecha) DESC
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:32.