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

Aplicar esta consulta a todos los usuarios

Estas en el tema de Aplicar esta consulta a todos los usuarios en el foro de Mysql en Foros del Web. Hola, Tengo esta consulta: Código: SELECT COUNT( e.id ) FROM events e WHERE e.id IN (SELECT p.id FROM participantes p WHERE p.user = 100) ORDER ...
  #1 (permalink)  
Antiguo 25/02/2014, 10:09
 
Fecha de Ingreso: julio-2010
Mensajes: 134
Antigüedad: 13 años, 9 meses
Puntos: 0
Aplicar esta consulta a todos los usuarios

Hola,
Tengo esta consulta:

Código:
SELECT COUNT( e.id ) 
FROM events e
WHERE e.id
IN (SELECT p.id FROM participantes p WHERE p.user = 100)
ORDER BY e.event_start DESC 
LIMIT 0 , 30
Funciona perfectamente. Lo que hace es devolver el numero de eventos en los que ha participado el usuario con id 100.

Lo que yo quiero es una consulta como esta, pero que me devuelva lo mismo pero PARA TODOS los usuarios de mi Bd.

Cosas importantes:
Tabla eventos: id-> id del evento
Tabla participantes: Guarda el id del evento y el id del usuario.

Existe otra tabla: usuarios, que supongo que he de añadir por algún sitio si quiero obtener la misma consulta pero para todos. Pero nada, no doy con la forma de hacerlo.

Gracias, estoy usando MySQL
  #2 (permalink)  
Antiguo 25/02/2014, 18:56
 
Fecha de Ingreso: julio-2010
Mensajes: 134
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Aplicar esta consulta a todos los usuarios

Si es necesario que ponga mas destalles decídmelo por favor.
Gracias
  #3 (permalink)  
Antiguo 25/02/2014, 19:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Aplicar esta consulta a todos los usuarios

Cita:
Lo que yo quiero es una consulta como esta, pero que me devuelva lo mismo pero PARA TODOS los usuarios de mi Bd.
Es una consulta de manual:
Código MySQL:
Ver original
  1. SELECT e.id, COUNT( e.id ) TotalEventos
  2. FROM events e INNER JOIN participantes p ON  e.id= p.id
  3. ORDER BY e.event_start DESC , e.id ASC
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 26/02/2014, 06:49
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Aplicar esta consulta a todos los usuarios

Imagino que @gnzsoloyo queria decir esto....

Código MySQL:
Ver original
  1. SELECT p.user, COUNT( p.id ) TotalEventos
  2. FROM participantes p

(para cada usuario cuantos eventos)

no esto

SELECT e.id, COUNT( e.id ) TotalEventos
...
GROUP BY e.id

Código MySQL:
Ver original
  1. SELECT e.id, IFNULL(COUNT(p.user),0) TotalParticipantes
  2. FROM events e LEFT JOIN participantes p ON  e.id= p.id
  3. ORDER BY e.event_start DESC , e.id ASC

Esto serian los participantes por evento ordenado por fecha de inició
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 26/02/2014 a las 06:58
  #5 (permalink)  
Antiguo 26/02/2014, 07:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Aplicar esta consulta a todos los usuarios




Exato, quimfv. Eso me pasa por escribir a las apuradas...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: select, sql, tabla, usuarios
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 11:50.