栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在某些单元格上使用自定义操作的CriteriaQuery SUM?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在某些单元格上使用自定义操作的CriteriaQuery SUM?

CriteriaBuilder
接口提供以下算术功能:

  • 加成:
    sum(a, b)
  • 减法:
    diff(a, b)
  • 乘法:
    prod(a, b)
  • 师:
    quot(a, b)

其中

a
b
参数可以是一个表达和/或文字。

至于查询,以下是以易于阅读的形式编写的示例:

CriteriaBuilder cb = em.getCriteriaBuilder();CriteriaQuery<Number> q = cb.createQuery(Number.class);Root<T> t = q.from(T.class);// build SUM(A * (100.0 - B) / 100.0) expressionexpression<Double> diff = cb.diff(100.0, t.<Double>get("B"));expression<Double> prod = cb.prod(t.<Double>get("A"), diff);expression<Number> quot = cb.quot(prod, 100.0);expression<Number> sum = cb.sum(quot);q.select(sum.alias("D"));System.out.println(em.createQuery(q).getSingleResult());

您还可以将查询作为单行构建:

q.select(cb.sum(cb.quot(cb.prod(t.<Double>get("A"), cb.diff(100.0, t.<Double>get("B"))), 100.0)).alias("D"));

我希望它可以澄清您的疑问。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/431172.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号