我有一个spring-jpa应用程序,使用query-by-example从数据库中提取行,如下所示:
public List<Person> query() {
Person p = new Person();
person.name = "john";
return dao.findAll(Example.of(p));
}问题:我想添加一个IN子句,比如:WHERE person.name IN ('john', 'jane');
从本质上讲,IN子句与在特定字段上进行OR匹配相同。
所以我可以用person.name = 'john' OR person.name = 'jane'实现同样的效果。
但是:我如何将这些条件添加到一个明显没有list属性的示例对象中呢?
发布于 2020-12-10 22:17:00
正如@Hitham S. AlQadheeb和@pirho暗示的那样,Query by Example不支持这一点。The documentation explicitly states
目前,只能使用SingularAttribute属性进行属性匹配。
使用派生查询、规范或自定义方法实现等替代方法。
https://stackoverflow.com/questions/65218892
复制相似问题