【发布时间】:2023-03-22 20:39:01
【问题描述】:
我有一个实体,其 Map<String,string> 是 specifications:
class Product {
Map<String, String> specifications;
}
我必须创建一个带有 2 个参数(键、值)的自定义查询,它将获取所有带有键的规范等于某个值的产品。
例如,获取红色的产品(伪代码):
遍历产品;
获取产品;
加入规范;
通过键'color'获取值并将其与给定值'red'进行比较;如果为真,则添加到输出; 下一个产品;
我试过这个查询:
@Query("SELECT p FROM Products p LEFT JOIN FETCH p.specifications, p.reviews WHERE p.specifications.?1 = ?2")
但显然,它不起作用。
【问题讨论】:
-
“没用”。 “明显地”。你真的告诉我们很多。 “d.specifications.?1”显然是无效的 JPQL。
标签: spring jpa spring-data spring-data-jpa jpql