标签: aggregate

SQL - WHERE AGGREGATE> 1

想象一下,我有一个包含{id,username,firstname,lastname}的客户的数据库表

如果我想找到有多少个不同名字的实例我可以做:

select firstname,count(*) from Customers group by 2 order by 1;

   username | count(*)
   ===================
   bob      |   1
   jeff     |   2
   adam     |   5
Run Code Online (Sandbox Code Playgroud)

如何编写相同的查询只返回多次出现的名字?即在上面的例子中只返回jeff和adam的行.

sql informix aggregate

2
推荐指数
1
解决办法
4840
查看次数

使用单线程的Sum TimeSpan数组?

有没有办法将多个聚合聚合到一个时间跨度?

Dim times = { 
  New TimeSpan(1, 0, 0),
  New TimeSpan(1, 10, 0),
  New TimeSpan(1, 50, 0),
  New TimeSpan(0, 20, 0),
  New TimeSpan(0, 10, 0)
}

Dim sum As New TimeSpan
For Each ts In times
  sum = sum.Add(ts)
Next

'That's what I desire:
sum = times.Sum
sum = times.Aggregate
Run Code Online (Sandbox Code Playgroud)

我正在寻找一些我不知道的内置功能.

更新 请阅读我对Reed Copsey答案的评论.

.net extension-methods timespan aggregate accumulate

2
推荐指数
1
解决办法
2329
查看次数

DDD:对具有两个聚合根的简单域进行建模

假设我要创建一个行动网站,会员可以在其中竞标物品。为了对此域建模,我有三个类:成员,项目和出价。我的头脑风暴将是这样的:

  • 项目可以包含多个出价
  • 出价与一个项目和一个成员相关联
  • 会员可以包含多个出价
  • 成员和项目可以不存在出价实例而存在
  • 没有Member和Item的竞价实例将不存在

考虑到所有这些,很明显,由于Member和Item对象是独立的,因此我们可以认为它们是集合根。出价将是其中一项的一部分。很明显,但是现在让我感到困惑的是,我应该选择哪个聚合根?项目或会员?

这是Apress的Pro ASP.NET MVC 3 Framework书中的示例,其执行方式如下所示:

在此处输入图片说明

给出以下代码:

public class Member 
{
    public string LoginName { get; set; } // The unique key
    public int ReputationPoints { get; set; }
}

public class Item 
{
    public int ItemID { get; private set; } // The unique key
    public string Title { get; set; }
    public string Description { get; set; }
    public DateTime AuctionEndDate { get; set; }
    public IList<Bid> Bids { get; set; } …
Run Code Online (Sandbox Code Playgroud)

domain-driven-design aggregate root

2
推荐指数
1
解决办法
709
查看次数

查找R中每1000000个计数的列的平均值

我有一个数据框,具有以下结构,有两列data1data2.以下是示例数据:

data1       data2        
800000    1
800030    0.956521739130435
1000000   0.480916030534351
1686626   0.496
1687492   0.174757281553398
2148463   0.0344827586206897
2850823   0.05
2959087   0.0416666666666667
Run Code Online (Sandbox Code Playgroud)

我想计算第二行的平均值,即data2每1000000计数data1.这意味着它应该给出前2行然后接下来3行的平均值,然后给出接下来的3行,依此类推......

输出应该是一个数据帧,其最后一个值在区间1000000内,并且该区间的平均值data2:样本输出如下所示:

 800030  0.97826087
 1687492 0.38389110
 2959087 0.04204981
Run Code Online (Sandbox Code Playgroud)

在R中可以做一些帮助吗?

aggregate r mean

2
推荐指数
1
解决办法
256
查看次数

如何以每行的模式(最常见)值聚合R中的数据?

例如,我有一个数据集

Data <- data.frame(
  groupname = as.factor(sample(c("a", "b", "c"), 10, replace = TRUE)),
  someuser = sample(c("x", "y", "z"), 10, replace = TRUE))


   groupname someuser
1          a        x
2          b        y
3          a        x
4          a        y
5          c        z
6          b        x
7          b        x
8          c        x
9          c        y
10         c        x
Run Code Online (Sandbox Code Playgroud)

如何汇总数据,以便获得:

groupname someuser
a         x
b         x
c         x
Run Code Online (Sandbox Code Playgroud)

这是每个组名最常见的值。

PS:根据我的设置,我只能使用2个包-plyr和lubridate

aggregate r

2
推荐指数
1
解决办法
4202
查看次数

子集和汇总数据集以准备堆积区域图的可视化

我有一个800k行的数据集,每个都有一个时间戳.数据涵盖一年的时间范围.

在准备我想要制作的堆积区域图时,我想创建26个子组(例如,两周间隔).在这些子组中,我想找到5个类中的值的频率.

例如:在前两周,这些值的百分比是> x && <= y,有多少是> y && <= z等.

所有这些都应该导致ggplot2库及其geom_area()函数创建的堆积区域图.

这是数据集的头部:

     date transaction_volume transaction_costs

47 2015-01-01           3.985826           0.03157
59 2015-01-01           3.955749           0.03157
71 2015-01-01           0.315700           0.03157
72 2015-01-01           0.315700           0.03157
73 2015-01-01           0.315700           0.03157
74 2015-01-01           0.315700           0.03157
Run Code Online (Sandbox Code Playgroud)

aggregate r ggplot2

2
推荐指数
1
解决办法
64
查看次数

怎么在jooq做一笔钱

你好我有一个方法来计算数据库中的值,我使用jooq然后迭代结果来进行求和,聚合一些字段.我的问题是我可以在jooq语句中执行所有操作,而不必遍历我的resultSet并手动添加它们吗?这是我到目前为止所做的:谢谢.

BigDecimal dealDiscountAmt = BigDecimal.ZERO;
BigDecimal standardAmtOneTimeTrue = BigDecimal.ZERO;
BigDecimal standardAmtOneTimeFalse = BigDecimal.ZERO;
BigDecimal oneTimeFalseX12 = BigDecimal.ZERO;

/** Dao for jooq access to db. */
@Resource(name = "dmDaoContext")
protected DSLContext dmDao_;


List<JDealMetricWorkflowCriteriaRecord> retValList = new ArrayList<JDealMetricWorkflowCriteriaRecord>();
JDealMetricWorkflowCriteriaRecord newDealRecord = new JDealMetricWorkflowCriteriaRecord();

List<JMetricServicePxvRecord> records = dmDao_.selectFrom(METRIC_SERVICE_PXV)
    .where(METRIC_SERVICE_PXV.DEAL_ID.eq(dealId), METRIC_SERVICE_PXV.PRODUCED_DATETIME.eq(whenProduced))
    .fetch();

for (JMetricServicePxvRecord record : records) {
  //sum all dealDiscounts
  dealDiscountAmt = dealDiscountAmt.add(record.getStandardTotalPxv().subtract(record.getProposedTotalPxv());

  if (record.getOneTime()) {
    //sum all dealDiscounts if oneTime is true
    standardAmtOneTimeTrue = standardAmtOneTimeTrue.add(record.getStandardTotalPxv().subtract(record.getProposedTotalPxv());
  } else {
    //sum all dealDiscounts if …
Run Code Online (Sandbox Code Playgroud)

java field aggregate sum jooq

2
推荐指数
1
解决办法
1575
查看次数

Mongolite group by/aggregate on JSON object

我的mongodb集合上有一个这样的json文档:更新文档:

{
"_id" : ObjectId("59da4aef8c5d757027a5a614"),
"input" : "hi",
"output" : "Hi. How can I help you?",
"intent" : "[{\"intent\":\"greeting\",\"confidence\":0.8154089450836182}]",
"entities" : "[]",
"context" : "{\"conversation_id\":\"48181e58-dd51-405a-bb00-c875c01afa0a\",\"system\":{\"dialog_stack\":[{\"dialog_node\":\"root\"}],\"dialog_turn_counter\":1,\"dialog_request_counter\":1,\"_node_output_map\":{\"node_5_1505291032665\":[0]},\"branch_exited\":true,\"branch_exited_reason\":\"completed\"}}",
"user_id" : "50001",
"time_in" : ISODate("2017-10-08T15:57:32.000Z"),
"time_out" : ISODate("2017-10-08T15:57:35.000Z"),
"reaction" : "1"
Run Code Online (Sandbox Code Playgroud)

}

我需要在intent.intent字段上执行group,我正在使用Rstudio和mongolite库.我试过的是:

pp = '[{"$unwind": "$intent"},{"$group":{"_id":"$intent.intent", "count": {"$sum":1} }}]'

stats <- chat$aggregate(
      pipeline=pp,
      options = '{"allowDiskUse":true}'
    )

print(stats)
Run Code Online (Sandbox Code Playgroud)

但它不起作用,上面代码的输出是

  _id count
1  NA   727
Run Code Online (Sandbox Code Playgroud)

json group-by aggregate mongodb mongolite

2
推荐指数
1
解决办法
445
查看次数

DDD集合:在另一个集合中持有非根实体标识符的实体

我正在尝试了解实体和集合之间的关系的最佳实践。

设想一个设计,其中有一个由两个实体组成的Product Aggregate

总根:产品

子实体:Sku

那里的产品可以有很多Skus。Skus和产品的零件号和名称是不变的,因为更改其中一个的名称必须以事务方式确保另一个已更新。同样,产品集合需要确保绝不存在重复的Skus。

我们还有另一个聚合:StorageLocation。存储1个或更多Skus的位置。但是,重要的是,StorageLocation知道要存储的特定Sku。即。在加拿大的StorageLocation应该存储该国本地的Sku,而不是用于美国市场的Sku。

在我看来,这意味着StorageLocation需要保留对Sku的引用(因为对产品汇总根的引用本身并未提供足够的信息来确定要存储的Sku)。

根据我的阅读,这似乎打破了另一个聚合对象不应持有对另一个聚合对象中非根实体的引用的原则。所以问题:

  • 在存储位置汇总中仅保留产品和Sku的标识符是可以接受的吗?
  • 我知道瞬态引用被认为是允许的,但在这种情况下(至少据我所知),此信息需要存储。如上所述,仅存储对Product(或ProductId)的引用是不够的。
  • 产品和Skus具有自然标识符(零件号,Sku号)。这是否为将这些值存储在StorageLocation聚合中提供了更大的灵活性,因为它们的含义超出了技术含义。
  • 我是用错误的方式来处理这个问题,需要以不同的方式看待事情。我经常发现很难突破PK / FK的心态。

谢谢

entity domain-driven-design aggregate

2
推荐指数
2
解决办法
376
查看次数

如何在R中对数据帧执行求和和计数

我有一个ID,类型和面积的数据框,我想一次执行两次操作

ID         Type         Area     
1           Aa          0.02    
2           Ag          0.12    
2           Ag          0.14    
2           Ag          0.80    
2           Bm          0.20    
2           Xm          0.13    
Run Code Online (Sandbox Code Playgroud)

预期的结果是

ID          Type       count      area     
1           Aa           1        0.02    
2           Ag           3        1.06 (sum)    
2           Bm           1        0.20    
2           Xm           1        0.13 
Run Code Online (Sandbox Code Playgroud)

我有多达100-150个ID,并且每种类型,具有相同ID的计数和基本面积都不同,什么是最好的方法来同时执行总和和计数并在数据帧中保留类型和ID?

谢谢

aggregate r

2
推荐指数
2
解决办法
81
查看次数