2012-09-18 137 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