$sql=select DNI from cliente;
$res=mysql_db_query(bd,$sql);
while($v=mysql_fetch_array($res))
{
   $sql2= select DNICliente from datos where fecha='$fecha';
   $res2=mysql_db_query(bd,$sql2);
   $esta='no';
   while($v2=mysql_fetch_array($res2))
   {
      if($v[DNI]==$v2[DNICliente])
      {
            $esta='si';
      }
   }
   if($esta=='no')
   {
     $valoresbuscados[]=$v[DNI];
   }
}  
Te explico esta manera que no es lamejor pero te puede funcionar: 
Recorres las tablas sacando todos los valores, si el resultado de $v[dni] y $v2[dni] coinciden es que está en las dos tablas porl o que no lo queremos, si no es asi, lo guardamos en el array $valoresbuscados, para sacar los valores recorres el array y ya está. No se si me he explicado bien, es que no tengo manera de profesor, si no te he resuelto la duda dilo y que te eche un cavle alguien que sepa mas, 
