Hibernar asignación de unión interna - cadena donde id
-
03-07-2019 - |
Pregunta
Me gustaría asignar el siguiente sql en NHibernate. ¿Tendré que crear un objeto de entidad separado, es decir, RoomTypeVO asignado a tb_tags para hacer esto? Cualquier ayuda muy apreciada.
SELECCIONAR dbo.tb_rooms.id, dbo.tb_rooms.name, dbo.tb_tags.name AS 'roomType' DESDE dbo.tb_rooms INNER JOIN dbo.tb_tags ON (dbo.tb_rooms.typeID = dbo.tb_tags.id)
<id name="id" column="id">
<generator class="native" />
</id>
<property name="name" />
Solución
Si va a una consulta de sql recta no tiene que hacerlo. Si desea utilizar HQL, tendrá que trabajar con una entidad.
Pero, siempre puedes hacer consultas SQL directamente.
Si tiene una entidad asignada, probablemente podría hacer algo como esto:
FROM RoomType
Otros consejos
Cuando te refieres a 'DE', ¿estás pensando en algo como esto?
<property name="totalPrice"
formula="( SELECT SUM (li.quantity*p.price) FROM LineItem li, Product p
WHERE li.productId = p.productId
AND li.customerId = customerId
AND li.orderNumber = orderNumber )"/>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow