Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/05/2014, 20:40
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: Problema con consulta fecha

La verdad, tu query no se entiende muy claramente, pero por sobre todo, tiene unos gravísimos errores conceptuales. Entre ellos se destaca un abuso de CONCAT, y el uso innecesario y erróneo del mismo, que sin lugar a dudas está haciendo juegos de relaciones totalmente incorrectos.
Para darte un ejemplo del dislate, en el FROM ese CONCAT podría perfectamente considerar iguales un par de valores como (23,4) y (2,34), por cuanto en el concat quedarían como "234" en ambos casos. Y es un error gigantesco.

Sin terminar de entender bien lo que quieres lograr con esa query, su sintaxis más cercana a la realidad sería mas o menos así:
Código MySQL:
Ver original
  1. SELECT f1.nro_identificacion, f1.tipo_identificacion
  2.     formulario_f1 f1
  3.         INNER JOIN formulario_f5 f5 ON (f1.nro_identificacion = f5.nro_identificacion
  4.             AND f1.tipo_identificacion =  f5.tipo_identificacion)
  5.         INNER JOIN formulario_f4_f7 f4f7 ON (f1.nro_identificacion = f4f7.nro_identificacion
  6.             AND f1.tipo_identificacion = f4f7.tipo_identificacion)
  7.     f1.fecha_atencion BETWEEN '2011-07-01' AND '2012-05-31'
  8.         AND f1.status = 'A'
  9.         AND f5.en_tarv = 1
  10.         AND f4f7.tipo_esquema_indicado = 1
  11.         AND f4f7.tipo_esquema_indicado NOT IN (2 , 3)
  12. GROUP BY f1.nro_identificacion, f1.nro_identificacion;
Algo mucho más simple de lo que pones. Y más eficiente por muchas razones.

En cuanto a que te devuelva vacío, eso es solamente un problema de datos, no de sintaxis: No se cumplen las condiciones, pero sin ver los datos y las estructuras reales de las tablas es difícil saber qué estás relacionando mal.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)