我正在创建一个规范,它返回由db函数GET_RECORD_IDS提供的id的记录。我在下面提供我的代码片段-
return ((root, query, criteriaBuilder) -> criteriaBuilder.and(root.get("id").in(
criteriaBuilder.function("GET_RECORD_IDS", List.class, criteriaBuilder.literal(str))))
但是这段代码导致了错误集合返回函数在WHERE中是不允许的。我该怎么做呢?
我发现下面的代码可以使它工作-
return ((root, query, criteriaBuilder) -> criteriaBuilder.and(root.get("id").in(
criteriaBuilder.function("select id from GET_RECORD_IDS", List.class, criteriaBuilder.literal(str))))