Hibernate中的exists使用

来源:互联网 发布:时时彩源码境外服务器 编辑:程序博客网 时间:2024/06/05 06:29

SaleInvoiceBO的id对应ValueCardOutBO的invoiceId
jdbc中的写法:

。。。FROM    smm_sale_invoice aLEFT JOIN smm_sale_invoice_dtl b ON a.ID = b.INVOICE_IDWHERE    1 = 1 and  EXISTS(select *  from mmm_value_card_out where invoice_id=a.id )AND a.SYS_NODE_ID = '4028948c379220e2013792269c050001'。。。

Hibernate中的写法:

DetachedCriteria detachedCriteria = DetachedCriteria.forClass(SaleInvoiceBO.class,"a")DetachedCriteria valueCardDC =  DetachedCriteria.forClass(ValueCardOutBO.class,"b");valueCardDC.add(Property.forName("a.id").eqProperty(Property.forName("b.invoiceId")));//EXISTS使用detachedCriteria.add(Subqueries.exists(valueCardDC.setProjection(Projections.property("b.invoiceId"))));
原创粉丝点击