Java 在Hibernate中选择like

Java 在Hibernate中选择like,java,sql,hibernate,hql,Java,Sql,Hibernate,Hql,我想在HQL中编写下面的SQL查询- select * from ITPMAST inner join STKMAST on ITPMAST.ITPITP=STKMAST.stkstk where STKMAST.STKSIT='S101' Itpmast类 我最好的尝试是 from Stkmast s join fetch s.itpmast i where s.sitmast.sitsit=:siteCode and i.itpitp like :code 但是这个HQL查询生成许

我想在HQL中编写下面的SQL查询-

select * from ITPMAST 
inner join STKMAST on ITPMAST.ITPITP=STKMAST.stkstk where STKMAST.STKSIT='S101'
Itpmast类 我最好的尝试是

from Stkmast s 
join fetch s.itpmast i where s.sitmast.sitsit=:siteCode and i.itpitp like :code 

但是这个HQL查询生成许多SQL查询来获取数据。谢谢。

您需要将获取类型设置为
join
,而不是映射中的默认
select

:



@Duli chan:这些查询访问哪些表?谢谢,我用Stkmast s join fetch s.itpmast where s.id like(:siteCode,:code)
public class Stkmast implements java.io.Serializable {

    private StkmastId id;
    private User usdmastByStkamdusd;
    private User usdmastByStkaddusd;
    private Sctmast sctmast;
    private Sitmast sitmast;
    private Itpmast itpmast;
    private BigDecimal stksohqty;
    private BigDecimal stksohqty01;
    private BigDecimal stksohqty02;
    private BigDecimal stksohqty03;
    private BigDecimal stksohqty04;
    private BigDecimal stksohqty05;
    private BigDecimal stksohqty06;
    private BigDecimal stksohqty07;
    private BigDecimal stksohqty08;
    private BigDecimal stksohqty09;
    private BigDecimal stksohqty10;
    private BigDecimal stksohqty11;
    private BigDecimal stksohqty12;
    private BigDecimal stksohqty13;
    private BigDecimal stksohqty14;
    private BigDecimal stksohqty15;
    private BigDecimal stksohqty16;
    private BigDecimal stksohqty17;
    private BigDecimal stksohqty18;
    private BigDecimal stksohqty19;
    private BigDecimal stksohqty20;
    private Date stkaddddt;
    private String stkaddtime;
    private Date stkamdddt;
    private String stkamdtime;
    private String stkcat;
    private Date stkltddt;
    private Date stklsalddt;
    private Date stklpurddt;
    private Date stklsalrtddt;
    private Date stklpurrtddt;
    private Date stklshortddt;
    private Date stklexcessddt;
    private Date stkltransferin;
    private Date stkltransferout;
    private BigDecimal stkmedsohqty;
    private BigDecimal stkmedsohqty01;
    private BigDecimal stkmedsohqty02;
    private BigDecimal stkmedsohqty03;
    private BigDecimal stkmedsohqty04;
    private BigDecimal stkmedsohqty05;
    private BigDecimal stkmedsohqty06;
    private BigDecimal stkmedsohqty07;
    private BigDecimal stkmedsohqty08;
    private BigDecimal stkmedsohqty09;
    private BigDecimal stkmedsohqty10;
    private BigDecimal stkmedsohqty11;
    private BigDecimal stkmedsohqty12;
    private BigDecimal stkmedsohqty13;
    private BigDecimal stkmedsohqty14;
    private BigDecimal stkmedsohqty15;
    private BigDecimal stkmedsohqty16;
    private BigDecimal stkmedsohqty17;
    private BigDecimal stkmedsohqty18;
    private BigDecimal stkmedsohqty19;
    private BigDecimal stkmedsohqty20;
}
from Stkmast s 
join fetch s.itpmast i where s.sitmast.sitsit=:siteCode and i.itpitp like :code 
<hibernate-mapping>
    <class name="com.mkyong.common.Stock" table="stock">
        <set name="stockDailyRecords"  cascade="all" inverse="true" 
            table="stock_daily_record" batch-size="10" fetch="join">
            <key>
                <column name="STOCK_ID" not-null="true" />
            </key>
            <one-to-many class="com.mkyong.common.StockDailyRecord" />
        </set>
    </class>
</hibernate-mapping>