Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/11/2013, 10:43
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: 17 años
Puntos: 2658
Respuesta: Comparacion de dos tablas en mysql y buscar los datos que no existen.

Cita:
Ahora lo que busco es que me muestre las personas que no están registradas en la fecha actual, pero la verdad no veo ningún resultado con la consulta que realice quisiera saber quien me podría echar una manito con este problema.
La consutla tal como la planteas tiene dos errores:
1) No puedes poner AND cuando el campo es NULL si al mismo tiempo consultas por otro de los campos de esa subtabla, porque esa condición excuye cualquier registro que exista... y por tanto la defcha también sería NULL.
2) ¿Para qué usas (SELECT NOW()). Es un desperdicio de tiempo y recursos. Bien podrías usar directamente la función, aunque si estás buscando por fecha, es mejor que uses CURDATE()

Por lo pronto, si la segunda tabla contiene los datos de registración, no corresponde usar LEFT JOIN sino INNER JOIN
Código MySQL:
Ver original
  1. SELECT b.id , b.nombre
  2. FROM tpersonal b INNER JOIN tregistro a ON b.id = a.Tpersona_id
  3. WHERE DATE(a.fecha) = CURDATE();
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)