标签: aggregate

聚合函数和其他列

SQL查询是否可以返回一些普通列和一些聚合列?

喜欢 :

Col_A | Col_B | SUM
------+-------+------
   5  |   6   |  7
Run Code Online (Sandbox Code Playgroud)

sql aggregate

3
推荐指数
1
解决办法
5446
查看次数

mysql检查组中是否存在值

我有一个名为表votes的列id,image_id,user_idtime.

如果特定user_id是每个选票之一,我如何在结果中添加一个bool image_id

SELECT image_id,
count(image_id) as vote_count
FROM votes
GROUP BY image_id 
ORDER BY vote_count DESC
Run Code Online (Sandbox Code Playgroud)

我已经尝试过,if(user_id = 18, 1, 0) as have_voted但它并不适合每个人image_id.

mysql sql group-by aggregate

3
推荐指数
1
解决办法
6206
查看次数

Person是一个聚合根吗?

由于所有实体都标记了谁创建/修改了记录,我们是否可以将Person实体视为所有实体的聚合根?

也就是说,引用Person的所有实体都将成为Person的集合,例如

public class Person
{
    public virtual int PersonId { get; set; }
    public virtual string Lastname { get; set; }
    public virtual IList<OrderHeader> CreatedOrders { get; set; }
    public virtual IList<OrderHeader> ModifiedOrders { get; set; }

    // Other entities that have a reference on Person will be mapped as a collection under 
    // the Person entity
}


public class OrderHeader
{
    public virtual int OrderId { get; set; }        
    public virtual DateTime OrderDate { get; set; }
    public …
Run Code Online (Sandbox Code Playgroud)

c# linq nhibernate domain-driven-design aggregate

3
推荐指数
1
解决办法
482
查看次数

PostgreSQL,SELECT CASE COALESCE

我需要"名"类:mycat是一个text可能的值列'0''4'.

SELECT CASE mycat                                       
       WHEN '0' THEN 'ZERO'                         
       WHEN '1' THEN 'ONE'                      
       WHEN '2' THEN 'TWO'                      
       WHEN '3' THEN 'THREE'                        
       WHEN '4' THEN 'OTHER'        
   END AS my_category,
   COALESCE(SUM(col1), 0), 
   COALESCE(SUM(col2), 0), 
   COALESCE(SUM(col3), 0) 
   FROM mytable 
GROUP BY mycat 
ORDER BY mycat;
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我的程序中有一些错误很少写null(或者''我在pgAdmin中可以看到).在这种情况下,我不得不把那个''一样'0'.但我不能那样做!

我试着这样:

SELECT CASE COALESCE(mycat, '0')
Run Code Online (Sandbox Code Playgroud)

但这根本无法解决.
如何得到''它将与'0'类别相加并组合在一起?

PostgreSQL 9.3,Windows.

sql postgresql aggregate case

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

我怎样才能在mongoose中聚合和填充

我在填充"Main"集合时遇到了问题,分组工作得很好,但我真的不知道如何填充,甚至在聚合后找到.find.我相信我在这里做模特铸造:

Main.aggregate([
      {$match : query},
      {
        $group:{
          _id: queryGroupBy,
          activated: {$sum: '$activated'},
          componentTitle: {$first:'$componentTitle'},
          titlePrefix: {$first:'$titlePrefix'},
          operator_name: {$first:'$operator_name'}
        }
      },
      {
        $project:{
          _id: '$_id',
          summation: '$activated',
          componentTitle: '$componentTitle',
          titlePrefix: '$titlePrefix',
          operator_name: '$operator_name'   
        }
      }],
      function(err,results) {
        if (err) throw err;
        result = results.map(function(doc) { 
          doc._id = doc._id,
          doc.activated = doc.activated,
          doc.componentTitle = doc.componentTitle,
          doc.titlePrefix = doc.titlePrefix,
          doc.operator_name = doc.operator_name,
          doc.fssStatusFDD = "",
          doc.dateUpdated = "",
          delete doc._id;
          delete doc.summation;

            var _main = new Main();
            _main = doc;
            console.log('test3');
            return _main …
Run Code Online (Sandbox Code Playgroud)

aggregate mongoose mean-stack mongoose-populate

3
推荐指数
1
解决办法
5054
查看次数

聚合意味着保持N.

我正在尝试aggregate数据集,但我还想保留观察数量.所以我所拥有的与此类似:

aggregate(iris$Sepal.Length, by=list(iris$Species), FUN=mean)
Run Code Online (Sandbox Code Playgroud)

但是这会返回一个像这样的对象:

 Group.1     x
1     setosa 5.006
2 versicolor 5.936
3  virginica 6.588
Run Code Online (Sandbox Code Playgroud)

当我想要的是那个和每个组中的观察(行)数量(在一个单独的列中)

aggregate r

3
推荐指数
1
解决办法
380
查看次数

在R中使用聚合来查找另一个变量的相同值的一个变量的唯一值

我想在此数据框中应用聚合函数:

A <- data.frame(c(1:2,1:2,2),c("a","c","b","c","d"))
colnames(A) <- c("ola","hi")
A

> A
  ola hi
1   1  a
2   2  c
3   1  b
4   2  c
5   2  d
Run Code Online (Sandbox Code Playgroud)

获得A的有序值A $ ola和相应的A $ hi唯一值,如下所示:

A <- data.frame(c(1:2),c("a,b","c,d"))
colnames(A) <- c("ola","hi")
> A
  ola  hi
1   1 a,b
2   2 c,d
Run Code Online (Sandbox Code Playgroud)

我试过这段代码:

aggregate(A, by=list(A$ola), FUN=unique)
Run Code Online (Sandbox Code Playgroud)

但它给出了这样的结果:

  Group.1 ola hi.1 hi.2
1       1   1    a    b
2       2   2    c    d
Run Code Online (Sandbox Code Playgroud)

可以请有人解释我,我做错了什么?

aggregate r

3
推荐指数
1
解决办法
4411
查看次数

Slick中的子查询,Having和GroupBy

我目前正在学习Slick。我试图将此查询从SQL转换为Scala:

SELECT name FROM Passenger
WHERE ID_psg in
(SELECT ID_psg FROM Pass_in_trip
GROUP BY place, ID_psg
HAVING count(*)>1)
Run Code Online (Sandbox Code Playgroud)

但是我只设法写了这样的东西,它给出了编译错误:

PassengerTable.table.filter(_.idPsg in (PassInTripTable.table.map(_.idPsgFk)))
  .filter(PassengerTable.table.count(_.name) > 1)
  .map(_.name)
Run Code Online (Sandbox Code Playgroud)

我真的不知道如何在Slick中应用计数和查询。因此,我非常感谢您的帮助。

sql scala aggregate slick

3
推荐指数
1
解决办法
1377
查看次数

将季度数据更改为每小时数据

我有如下数据.它是从2015年1月1日〜2015年12月31日.数据按季度计算.但我想添加,例如,像0:00,0:15,0:30,0:45一样来制作小时数据.如何将其转换为每小时数据?

先感谢您.

  Date      Hour Day-ahead Total Load Forecast [MW] - Germany (DE)
01.01.2015  0:00    42955
01.01.2015  0:15    42412
01.01.2015  0:30    41901
01.01.2015  0:45    41355
01.01.2015  1:00    40710
01.01.2015  1:15    40204
01.01.2015  1:30    39640
01.01.2015  1:45    39324
01.01.2015  2:00    39002
01.01.2015  2:15    38869
01.01.2015  2:30    38783
01.01.2015  2:45    38598
01.01.2015  3:00    38626
01.01.2015  3:15    38459
01.01.2015  3:30    38414
...


   > dput(head(new3))
structure(list(Date = structure(c(16436, 16436, 16436, 16436, 
16436, 16436), class = "Date"), Hour = c("0:00", "0:15", "0:30", 
"0:45", "1:00", "1:15"), Dayahead …
Run Code Online (Sandbox Code Playgroud)

aggregate r converter

3
推荐指数
1
解决办法
91
查看次数

如何在不删除整个行的情况下让R忽略N / A值?

我正在处理一个大型数据集(大约40列),我需要按月汇总不同列的值,并对当月内的值求平均值。数据集看起来像这样。

dd <-
mo  yr Na   NH4 NO2
1 2009 0.4  N/A N/A
1 2009 0.2  0.1 N/A
2 2009 0.5  0.6 0.4
2 2009 0.7  0.2 0.1
Run Code Online (Sandbox Code Playgroud)

我用过

dd.agg=aggregate(.~mo+yr, dd, FUN=mean)
Run Code Online (Sandbox Code Playgroud)

来创建一个新的数据集,但是由于我在NO2列中有一些N / A数据(并且由于采样过程中的某些问题,所以我无法将其删除或将其更改为0),所以整个一月已从dd.agg数据集中删除。我尝试添加na.rm = TRUE,但似乎无济于事。

从本质上讲,我需要R忽略N / A数据的存在。不要将它们视为0(这会影响平均值),而是要从该数据集中获取如下内容

dd.agg <-
mo  yr Na   NH4 NO2
1 2009 0.3  0.1 N/A
2 2009 0.6  0.4 0.25
Run Code Online (Sandbox Code Playgroud)

如果整个月由N / A组成,那么平均值就是N / A值(或一个空单元格,对我来说并不重要,因为我在图中不需要它们),以及当一个月有只需几个N / As,即可得出非N / As值的平均值。我可以逐行执行相同的聚合过程,然后将所有内容手动放入新的数据集中,但是对于40列来说有点痛苦...有什么想法吗?

aggregate r

3
推荐指数
1
解决办法
45
查看次数