spring - 如何将 where 子句添加到具有子查询的查询中?
问题描述
这里有查询:
Subquery<PreferenceGroup> sq = query.subquery(PreferenceGroup.class);
Root<Preference> subroot = sq.from(Preference.class);
Join<Preference, PreferenceGroup> sqEmp = subroot.join("preferenceGroup");
sq.select(sqEmp).where(builder.equal(subroot.get("key"),
prefKey));
生成:
Hibernate: select preference0_.id as id1_1_, preference0_.key as key2_1_, preference0_.user_id as user_id3_1_ from preference_group preference0_ where preference0_.id in (select preference2_.id from preference preference1_ inner join preference_group preference2_ on preference1_.preference_group_id=preference2_.id where preference1_.key=?)
这没关系,但我还想在外部 select 语句中再添加一个 where 子句。这个怎么做?所以应该是^ ...在哪里preference0_.key=?和preference0_.id(选择preference2_...)
解决方案
推荐阅读
- elasticsearch - Logstash API 配置 http
- javascript - 无法获得 concat 值并且 php 无法正常工作
- protractor - 量角器的远程硒服务器
- angular - 什么是 HttpHeaders,为什么在 Angular 中使用它?
- nested - 如何在 jinja2 中缩进嵌套的 if/for 语句
- c# - EF Core ThenInclude 具有 1:n 关系的外键值
- python - 打印 h5py 数据集切片时的省略号控制
- reactjs - 如果从反应钩子中的许多来源获取,如何防止重新渲染?
- java - 我用 Java 创建了一个服务,但它不在后台运行
- python - 无法使用来自不同模块的自定义类获取 Manager().dict() 值