我有我的春天JPA数据接口里面的方法如下:春数据:多个IN的查询里面
List<TransactRepViewModel> findByClientIdInAndClDateBetween(List<String> clientIdList, Date startDate, Date endDate)
的问题是,我得到这个错误是由于具有约5000-20000字符串我clientIdList对象中:
ORA-01795: maximum number of expressions in a list is 1000
有没有办法在弹簧数据查询中使用多个IN并将我的列表分开以避免错误?
更新:
THS是如何得到我的客户对象列表:
List<ClieTabModel> clieTabModelList = clieTabModelRepository.findByCompanyId(companyViewModel.getId());
这是我得到的客户端1d的名单:
List<String> clientIdList = new ArrayList <>();
for (ClieTabModel clieTabModel : clieTabModelList) {
clientIdList.add(clieTabModel.getClientId());
}
你肯定在每个查询传递5000-20000参数是一个很好的决定?在这种情况下使用子选择/连接可能会更好... – dmitrievanthony
列表中有多少个元素? – developer
@javaguy最少5000. –