Utilización de la Clausula DISTINCT en Access

Estoy haciendo una serie de consultas en Access 2000 y este motor de base de datos no me acepta la Clausula DISTINTC... Y lo que exactamente necesito es contar la cantidad de veces que aparece un código en una consulta sin que tenga en cuenta los duplicados... Es decir, COUNT(DISTINCT(CÓDIGO))... ¿Será qué la Clausula DISTINCT no la acepta ACCESS o es que lo que intento hacer no es posible? Aunque creo que si debe ser posible...

1 Respuesta

Respuesta
1
No acepta la clausula distinct. Pero de todos modos es un comando que no debería usarse nunca. Ralentiza demasiado en comparacion con el group by.
Ejemplo :
select count(distinct(ID_NATURE)) from tbconcept
Pero es mas rapido :
select
count(1)
from
(
select count(ID_NATURE) from
tbconcept
group by ID_NATURE
)
Como access no te acepta las subconsultas, create una vista (access las llama consultas), por ejemplo con el código de ejemplo
select count(ID_NATURE) from
tbconcept
group by ID_NATURE
y de la vista haces la consulta.
select count(1) from vista.
Detalle : lo de no usar distinct es porque en grandes consultas el uso de funciones impide que se usen los indices correctamente.
Muchas gracias por tu aclaración acerca del DISTINCT... aunque la solución de las vistas o subconsultas ya lo había aplicado... pero me parece muy pobre por parte del Motor de ACCESS que no permita hacer eso; ya que por cada campo que necesite el distinct debo hacer dos consultas y no es funcional.
Muchas gracias... GeOrGeSoFt.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas