一尘不染

将object []传递到sql查询

sql

在我的应用程序中,我有类别ID的列表。现在,我想从数据库中基于产品类别获取产品,该产品类别将包含在该列表中,还包含诸如“
XYZ”之类的产品名称。如何使用IN子句来实现此目的。有没有人有任何想法我通过传递尝试了这个但我得到了空列表

我的代码是:

Object[] cids=final_cats.toArray();
String cds=final_cats.toString();
String query="select fpd from FTextProductDetails ftpd inner join ftpd.fProductDetails fpd WHERE fpd.categoryId in( "+cds+" )and ftpd.productName like ?" ;
Object[] values=new Object[]{'%'+productName+'%'};
List<Object[]> list=HibernatePaginationImpl.findProductsByName(query, values,pageSizeLimit , pageNumber,this.baseDao);

在这里,final_cats具有所有类别。


阅读 121

收藏
2021-05-16

共1个答案

一尘不染

我已经解决了我的问题。

这是代码:

Object[] cids=final_cats.toArray();
String cds="";
for(Object o:cids) {

        cds=cds+o+",";
}

cds=cds.substring(0, cds.length()-1);

String query="select fpd from FTextProductDetails ftpd inner join ftpd.fProductDetails fpd WHERE fpd.categoryId in( "+cds+")and ftpd.productName like ?" ;
Object[] values=new Object[]{'%'+productName+'%'};
List<Object[]> list = HibernatePaginationImpl.findProductsByName(query, values,pageSizeLimit , pageNumber,this.baseDao);
2021-05-16