Recuperación de datos de una tabla compuesta usando HQL

Usando NHibernate para .NET tengo 3 tablas. Uno es CourseType, el otro es Contact y el último es un compuesto llamado CourseType_Contact la tabla compuesta se ve así...

CourseTypeID Guid, ContactID Guid

Estoy intentando usar HQL para escribir una consulta que recuperará todos los Contacts para un tipo de curso específico, pero no sé cómo hacerlo en HQL.

En SQL, mi consulta se vería así.

SELECT * FROM Contact WHERE ContactID IN(
SELECT ContactID FROM CourseType_Contact WHERE CourseTypeID = @CourseTypeID)

¿Alguien podría señalarme en la dirección correcta?

preguntado el 04 de julio de 12 a las 03:07

¿Tiene una Contacts propiedad en tu clase CourseType? -

Sí, pero en este caso no quiero recuperar el CourseType real, solo quiero las asociaciones. -

1 Respuestas

Mucho tiempo sin usar HQL, pero creo que podrías hacerlo

SELECT co FROM CourseType ct 
JOIN   ct.Contacts co
WHERE  ct.CourseTypeId = :Id

Respondido 04 Jul 12, 04:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.