【发布时间】:2021-01-30 17:56:32
【问题描述】:
我目前正在尝试使用 Ms SQL-Server 和 Panache-Repositories 实现“加载所有 X,其中 X.name 包含 y”的功能。 我知道 SQL 查询 "SELECT * FROM X WHERE X.name LIKE '%0y%'" 有效,但我无法使用 Panache-Query 让它工作。 我试过了
@ApplicationScoped
public class XRepository implements PanacheRepository<X> {
public List<X> listWhereLike(String like) {
return list("name like ?1", "%" + like + "%");
}
public List<X> listWhereLike(String like) {
return list("name like %?1%", like);
}
public List<X> listWhereLike(String like) {
return list("contains(name, ?1)", like);
}
}
但它们都不起作用。 它们要么因为意外字符“%”或“(”而引发异常,要么只是返回一个空列表。
我错过了什么?
【问题讨论】:
标签: sql jpa substring contains quarkus-panache