Gustavo,

Por supuesto que te trae varias veces el mismo usuario, ¿por qué le sacaste
el distinct?

En respuesta a tu pregunta sobre performance: a la hora de ejecutar, un
inner join ANSI y un join en el WHERE son exactamente lo mismo (asumiendo
que el motor de base de datos no sea una porqueria)
Igual, Fabio te muestra cómo armarlo con joins (el resultado debería ser
equivalente)

Personalmente, me gusta mucho más la implementación que propone José,
utilizando diccionarios. La única limitación es que los atributos pueden
aparecer sólo una vez.

    Diego


2011/2/28 Gustavo Garcia <[email protected]>

> Hola Diego,
> Probé con esto:
>
>
> select u from User u , AttributeUser AU6, AttributeUser AU7 where (AU6.User = 
> u AND AU6.Attribute = 1 AND AU6.Value > \'15\') AND (AU7.User = u AND 
> AU7.Attribute = 1 AND AU7.Value < \'25\')
>
> Y funciona, pero me trae 3 veces el mismo usuario.  Estoy leyendo sobre el
> "distinct" a ver cómo me va.
>
> --
> Para escribir al Grupo, hágalo a esta dirección:
> [email protected]
> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a