Count(distinct campo)
Tengo la siguiente query:
SELECT DISTINCT USUARIOS.Nacionalidad, Count(DISTINCT USUARIOS.Nacionalidad) AS Expr1
FROM ACTUACIONES INNER JOIN USUARIOS ON ACTUACIONES.CodExp=USUARIOS.CodExp
WHERE DateDiff("d", FechaDesde,[FechaActuacion])>=0 AND DateDiff("d",FechaHasta, FechaActuacion])<=0
GROUP BY USUARIOS.Nacionalidad;
Pretendo obtener el numero de usuarios por nacionalidad a los cuales se les haya hecho alguna actuación en su expediente durante las fechas desde y hasta introducidas como parámetros.
PROBLEMA: no me funciona el distinct dentro del count, entonces me saca todas las nacionalidades resultado del join (más nacionalidades que usuarios). Pregunta: ¿Admite el count(distinct campo) el sql de Access? O acaso estoy planteando mal la query. No se si me he explicado bien.
SELECT DISTINCT USUARIOS.Nacionalidad, Count(DISTINCT USUARIOS.Nacionalidad) AS Expr1
FROM ACTUACIONES INNER JOIN USUARIOS ON ACTUACIONES.CodExp=USUARIOS.CodExp
WHERE DateDiff("d", FechaDesde,[FechaActuacion])>=0 AND DateDiff("d",FechaHasta, FechaActuacion])<=0
GROUP BY USUARIOS.Nacionalidad;
Pretendo obtener el numero de usuarios por nacionalidad a los cuales se les haya hecho alguna actuación en su expediente durante las fechas desde y hasta introducidas como parámetros.
PROBLEMA: no me funciona el distinct dentro del count, entonces me saca todas las nacionalidades resultado del join (más nacionalidades que usuarios). Pregunta: ¿Admite el count(distinct campo) el sql de Access? O acaso estoy planteando mal la query. No se si me he explicado bien.
Respuesta de denciso
1
1 respuesta más de otro experto
Respuesta de hen9
1
el access no te acepta el distinct dentro del count, como si te lo acepta el SQL, lo tenes que solucionar de otra forma, por ejemplo con una tabla auxiliar, slds - Gabriel Adrian