2012-09-18 131 views
1

我在條件查詢創建這種類型的查詢休眠創建休眠標準內查詢

SELECT * 
     FROM 
     ${hibernate.default_schema}.VW_GEMS_CUST_TRNG_RPT CUSTOMER, 
     (SELECT * FROM ${hibernate.default_schema}.VW_GEMS_VENUE WHERE ORG_NAME =?) 
     VENUE 
     WHERE 
     CUSTOMER.PRIMARY_VENUE_ROW_ID = VENUE.VENUE_ROW_ID(+) 
     AND CUSTOMER.ORG_NAME =? 
     AND CUSTOMER.CONTACT_ID =? 
     ORDER BY CUSTOMER.EVNT_START_DT DESC 

我該怎麼辦呢?

+0

FROM子句中的子選擇對於條件api是不可能的 – Firo

回答

0

ROM子句中的子選擇不能與標準API一起使用。
但是,您可以重寫沒有子選擇的查詢。

SELECT * 
FROM 
    ${hibernate.default_schema}.VW_GEMS_CUST_TRNG_RPT CUSTOMER 
inner join ${hibernate.default_schema}.VW_GEMS_VENUE VENUE 
     on (CUSTOMER.PRIMARY_VENUE_ROW_ID = VENUE.VENUE_ROW_ID(+) 
     and venue.ORG_NAME =?) 
WHERE 
     CUSTOMER.ORG_NAME =? 
     AND CUSTOMER.CONTACT_ID =? 
ORDER BY CUSTOMER.EVNT_START_DT DESC