2017-03-16 59 views
1

我嘗試將SQL查詢轉換爲HQL時遇到問題。如何將SQL查詢轉換爲帶有兩個表和左連接的HQL查詢

SQL查詢

SELECT RahHistoSaipAcogida.numicu, RahHistoSaipAcogida.fecharealiza, TaSaip.tipo_descri AS [Tipo Acogida], RahHistoSaipAcogida.paccomunica, RahHistoSaipAcogida.presentación, RahHistoSaipAcogida.infohlp, RahHistoSaipAcogida.infovolant, RahHistoSaipAcogida.infoddp, RahHistoSaipAcogida.observaciones, RahHistoSaipAcogida.nom_prof, RahHistoSaipAcogida.autoriza_informacion 
FROM RahHistoSaipAcogida 
LEFT JOIN TaSaip ON RahHistoSaipAcogida = TaSaip.tipo_codi 
WHERE RahHistoSaipAcogida.fecharealiza BETWEEN :desde AND :hasta 

HQL查詢

session1.createQuery("FROM RahHistoSaipAcogida acog, TaSaip ts LEFT JOIN ts ON acog.tipo = ts.tipo_codi WHERE acog.fecharealiza BETWEEN :desde AND :hasta") 
       .setParameter("desde", fechadesde) 
       .setParameter("hasta", fechahasta); 

堆棧跟蹤

ERROR: Path expected for join! Path expected for join!

如果任何人都可以幫助我,我會非常感激。由於

+0

顯示您entiteis – Jens

回答

1

您的查詢必須是這樣的:

FROM RahHistoSaipAcogida acog LEFT JOIN acog.ts WHERE acog.fecharealiza BETWEEN :desde AND :hasta 

你的工作對象和性質有沒有對錶

+0

沒有需要'LEFT JOIN'在這個例子中。 –

+0

@ v.ladynev你爲什麼這麼認爲? – Jens

+0

它沒有被使用。 –