criteria 相关问题

ORM框架的典型机制,允许以动态和面向对象的方式创建对数据库的查询。使用Criteria编写查询时,使用API​​而不是使用定义的语言(SQL)编写查询。

使用@Convert按属性过滤条件

我有一个带有字符串列表的简单类,并且该列表使用@Convert转换为数据库中的一列,现在我正在尝试创建一个基于类型属性的标准。 @Entity(名称 = "my_tabl...

回答 2 投票 0

如何根据条件使用 LOOKUP 函数查找之前的日期/值?

我一直在为这件事摸不着头脑。 我需要执行日期之间的差异,即当前日期减去前一个日期,同时匹配 ID(在本例中为车牌)。 我发现了一个

回答 1 投票 0

在 Criteria 中加入多个表会破坏预期的输出

我正在尝试在多个表中进行动态搜索。 当我只加入一张表时,我得到了预期的输出。 当我连接所有表时,我只得到一半的结果,甚至没有。即使我不知道

回答 1 投票 0

(Excel)根据另一列的最高总和值从列中选择值

我想根据下面的示例找出哪个月的累计小时数最高。我理解根据另一个值选择一个值,但当我仍然必须找到每个值时,我就不会理解......

回答 1 投票 0

如何向 Hibernate criteria api 查询插入“优化器提示”

我有一个使用标准 API 动态组合的休眠查询。 如果按原样执行,它生成的查询速度慢得难以忍受。 但我注意到如果我

回答 5 投票 0

NetSuite 标准汇总结果

我有这个公式可以给我一个聚合结果或 CASE 语句中由 KEEP 语句分组的可能性之一。这在公式上正确吗?我不断收到错误...

回答 1 投票 0

Excel 查找多列中的最小值以选择符合标准的产品

我有超过 900 种不同的梁,根据其他一些设计值,有一些可以满足要求。 我正在尝试从可接受的列表中选择重量最轻的光束

回答 1 投票 0

VBA:如何检查过滤条件2是否存在?

我正在尝试检查表上过滤器的 Criteria2 是否存在。如果只有一个条件或者 Criteria1 是一个数组,我会收到错误。有没有办法检查过滤器的条件是否存在...

回答 2 投票 0

'WHERE (col1, col2) 的 SQL 语法术语 < (val1, val2)'

正如我的问题所述,我想知道我们在 WHERE 子句中使用该类型条件的查询类型,即: 从 mytable 中选择 * 哪里(第 1 列,第 2 列)< (1, 2); In other wor...

回答 3 投票 0

是否可以通过对数据库进行一次调用来获取结果列表的大小并实现分页?

这与这个问题相关:Total row count for pagination using JPA Criteria API。 我不想进行两个单独的查询,一个用于选择计数,然后一个用于获取分页结果。 是...

回答 1 投票 0

如何自动过滤具有特定文本和数值的列?

我有这个范围,例如 A1:H2000,需要在 A 列中进行过滤 - 我对此过滤器有两个不同的标准,如下所示: 标准 1 - 数组("C1","C2", "C3")

回答 1 投票 0

whit 标准构建器谁在 postgresql 上的键数组中查找键

大家好,感谢您花时间回答我。 在我的工作中,我想实现一种在 id 数组中查找一个 id 的方法 我尝试重现这样的东西,但是在 java hibernate + criter 中...

回答 1 投票 0

已经注册了一个副本:org.hibernate.query.sqm.tree.select.SqmSubQuery。下面的代码出现此错误,如何修复它

public static Long getRows(final EntityManager em, Final CriteriaQuery criteria) { 最终 CriteriaBuilder cb = em.getCriteriaBuilder(); 最终标准查询 public static<T> Long getRows(final EntityManager em, final CriteriaQuery<T> criteria) { final CriteriaBuilder cb = em.getCriteriaBuilder(); final CriteriaQuery<Long> countCriteria = cb.createQuery(Long.class); final Root<T> root = countCriteria.from(cb.getResultType()); countCriteria.select(cb.count(root)); for(final Root<?> rootObj: criteria.getRoots()){ countCriteria.getRoots().add(rootObj); } final Predicate whereRes = criteria.getRestriction(); if(whereRes != null){ countCriteria.where(whereRes); } final Predicate groupRes = criteria.getGroupRestriction(); if(groupRes != null){ countCriteria.having(groupRes); } countCriteria.groupBy(criteria.getGroupList()); countCriteria.distinct(criteria.isDistinct()); return em.createQuery(countCriteria).getSingleResult(); } } 在上面函数的最后一行升级到 Spring Boot 3、Hibernate 6 后,我在代码中遇到了这个问题。请推荐。TIA 按照这个方法就可以了 ublic Long count() { var countBuilder = (HibernateCriteriaBuilder) builder; //CriteriaBuilder from class level var countQuery = countBuilder.createQuery(Long.class); var subQuery = countQuery.subquery(Tuple.class); var sqmSubQuery = (SqmSubQuery<Tuple>) subQuery; var sqmOriginalQuery = (SqmSelectStatement) query; // CriteriaQuery from class level var sqmOriginalQuerySpec = sqmOriginalQuery.getQuerySpec(); var sqmSubQuerySpec = sqmOriginalQuerySpec.copy(SqmCopyContext.simpleContext()); sqmSubQuery.setQueryPart(sqmSubQuerySpec); Root<?> subQuerySelectRoot = subQuery.getRoots().iterator().next(); sqmSubQuery.multiselect(subQuerySelectRoot.get("id").alias("id")); countQuery.multiselect(countBuilder.count(countBuilder.literal(1))); countQuery.from(sqmSubQuery.distinct(true).orderBy(builder.asc(subQuerySelectRoot.get("id")))); return entityManager.createQuery(countQuery).getSingleResult(); } 或 研究 这篇文章https://hibernate.atlassian.net/browse/HHH-17410 UPD 我对以前的版本有奇怪的问题(有时它尝试从另一个请求表请求对象),所以现在看起来像: public Long count(CriteriaBuilder builder, CriteriaQuery query) { var countBuilder = (HibernateCriteriaBuilder) builder; var countQuery = countBuilder.createQuery(Long.class); var subQuery = countQuery.subquery(Tuple.class); var sqmSubQuery = (SqmSubQuery<Tuple>) subQuery; var sqmOriginalQuery = (SqmSelectStatement) query; var sqmOriginalQuerySpec = sqmOriginalQuery.getQuerySpec(); var sqmSubQuerySpec = sqmOriginalQuerySpec.copy(SqmCopyContext.simpleContext()); sqmSubQuery.setQueryPart(sqmSubQuerySpec); Root<?> subQuerySelectRoot = subQuery.getRoots().iterator().next(); sqmSubQuery.multiselect(subQuerySelectRoot.get("id").alias("id")); countQuery.multiselect(countBuilder.count(countBuilder.literal(1))); countQuery.from(sqmSubQuery.distinct(true).orderBy(builder.asc(subQuerySelectRoot.get("id")))); return entityManager.createQuery(countQuery).getSingleResult(); } 我正在尝试实现上述内容 countQuery.from(sqmSubQuery.distinct(true).orderBy(builder.asc(subQuerySelectRoot.get(“id”)))); 我收到错误: 无法解析方法“from(org.hibernate.query.criteria.JpaSubQuery)” 知道如何解决这个问题吗? 感谢你的帮助。谢谢!

回答 2 投票 0

从列中选择数据并创建报告

在此处输入图像描述我想创建一个报告,需要从 A 列、B 列、C 列中选择一些数据并将它们插入到 F 列中。我附上报告的一部分作为示例,我...

回答 2 投票 0

寻找Excel公式来根据多个条件计算重复项

我正在处理大量数据(超过 15000 行)。下面的示例是我正在处理的数据的一个非常简化的版本。 我正在尝试统计 2023 年和 2021 年分别出现了多少个 ID,bas...

回答 1 投票 0

MongoDB Spring 字段间数据对比

我试图简单地在我的字段之间进行比较,但它似乎不适用于 spring 数据: query.addCriteria(Criteria.where("active").gt("limit")); 活动和限制是我的 2 个字段

回答 4 投票 0

CriteriaBuilder 无法解析方法“greaterThan(int, int)”

我正在形成一个查询,将数据库结果与 API 请求数据进行比较,但出现以下错误: 无法解析方法“greaterThan(int, int)”。 我的代码如下所示。 2 是com...

回答 1 投票 0

Grails - 标准构建器 - createCriteria

场景是这样的: 每个进程都有多个处理步骤 我编写的代码能够获取所有进程,而无需与ProcessingSteps相对应。 我知道我是

回答 1 投票 0


带有数组聚合的 CriteriaQuery

我想对自定义数据访问类执行查询。不幸的是我被困在中途了。 类用户{ 私人长ID 私有字符串名称 私人 Set 组 ... } 班级组...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.