Перекрестное соединение, а затем левое соединение с использованием HQL или критериев - PullRequest
1 голос
/ 09 мая 2011

Можно ли использовать HQL для перекрестного соединения между двумя таблицами, выбрать некоторые столбцы и затем оставить объединение результатов с третьей таблицей.

SQL, который делает то, что я хочу:

SELECT LIB.DID, DF.DFID,  LIB.DCODE, LIB.OID, LIB.ODESCRIPTION, DF.VALUE  FROM (
  SELECT D.ID as DID, D.CODE AS DCODE, O.ID AS OID,  O.DESCRIPTION AS ODESCRIPTION FROM LIBRARY D 
    CROSS JOIN LIBRARY O
      WHERE O.TYPE = 'O'
      AND D.TYPE = 'D'
    ) LIB
  LEFT JOIN DF
    ON LIB.DID = DF.D_ID AND LIB.OID = DF.O_ID

Может ли что-то подобное быть достигнуто с HQL, Критериями или аналогичным?

Редактировать : Упрощенныйи немного лучше отформатировал SQL

...