en los datos que pones ningun registro tiene fec2 esta bien eso??
porque con esos datos puedes sacar esto:
Código SQL:
Ver originalCREATE TABLE #temp
(
juz VARCHAR(20),
EXP INT,
[año] INT,
inc VARCHAR(20),
fec1 datetime,
fec2 datetime,
fec3 datetime
)
INSERT INTO #temp VALUES ('110402',59,2012,'mario','06/08/2012','06/30/2012','06/01/2012')
INSERT INTO #temp VALUES ('50400',54,2012,'maria','02/18/2012','06/30/2012','02/21/2012')
INSERT INTO #temp VALUES ('50400',54,2012,'jesus',NULL,NULL,'02/21/2012')
INSERT INTO #temp VALUES ('50400',54,2012,'jose',NULL,NULL,'02/21/2012')
SELECT COUNT(*),EXP FROM #temp
WHERE (fec1 BETWEEN '01/01/2012' AND '06/30/2012') AND
(fec3 BETWEEN '01/01/2012' AND '06/30/2012') AND (fec3<> '1800-01-01')
--AND (clavedel BETWEEN '847501' AND '847808')
--AND (juz = '50400')
GROUP BY EXP
y cuenta nada mas un registro por exp ya que solo 1 registro cumple con las 2 condiciones ahora no se donde esta el problema, digo jugue un poco con tus datos y obtengo lo que necesitas no???