Ver Mensaje Individual
  #4 (permalink)  
Antiguo 20/09/2013, 10:10
Avatar de gnzsoloyo
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, 5 meses
Puntos: 2658
Respuesta: Obtener un listado de los miembros que tiene 2 semanas sin asistir

Básicamente, si la tabla de asistencias sólo aparecen los que efectivamente asistieron, y tu quieres saber quienes no asistieron en ningún momento de esas dos semanas, debes usar LEFT JOIN, y preguntar por aquellos que no tienen registros en ese período.
Para ello también te conviene obtener una tabla derivada (en el FROM), de los id de aquellos registros que corresponden al periodo.
Creo que algo así funcionaría:

Código MySQL:
Ver original
  1.     CONCAT(m.nombre,' ',m.apellido) nombre_completo
  2. FROM miembros m LEFT JOIN
  3.     (SELECT id_asistencia FROM asistencias WHERE  DATE(a.fecha) >=  DATE_SUB(CURDATE (), INTERVAL 2 WEEK)) a ON m.id_asistencia = a.id_asistencia
  4. WHERE a.id_asistencia IS NULL
  5. GROUP BY m.nombre;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)