标签: group-by

Linq to Objects:GroupBy是否保留元素的顺序?

从LINQ到Objects的Enumerable.GroupBy是否保留组中元素的顺序?

.net linq group-by

102
推荐指数
1
解决办法
8366
查看次数

GROUP BY组合/连接一列

我有一张桌子如下:

ID  User  Activity  PageURL  
 1  Me    act1      ab     
 2  Me    act1      cd     
 3  You   act2      xy     
 4  You   act2      st
Run Code Online (Sandbox Code Playgroud)

我希望按用户和活动进行分组,这样我最终得到的结果如下:

User  Activity  PageURL  
Me    act1      ab, cd     
You   act2      xy, st
Run Code Online (Sandbox Code Playgroud)

如您所见,列PageURL由基于group by的逗号分隔在一起.

真的很感激任何指针和建议.

sql sql-server group-by sql-server-2008

93
推荐指数
2
解决办法
18万
查看次数

MySQL"Group By"和"Order By"

我希望能够从电子邮件表中选择一堆行,并通过发件人对它们进行分组.我的查询如下所示:

SELECT 
    `timestamp`, `fromEmail`, `subject`
FROM `incomingEmails` 
GROUP BY LOWER(`fromEmail`) 
ORDER BY `timestamp` DESC
Run Code Online (Sandbox Code Playgroud)

查询几乎按我的意愿运行 - 它选择通过电子邮件分组的记录.问题是主题和时间戳不对应于特定电子邮件地址的最新记录.

例如,它可能会返回:

fromEmail: john@example.com, subject: hello
fromEmail: mark@example.com, subject: welcome
Run Code Online (Sandbox Code Playgroud)

当数据库中的记录是:

fromEmail: john@example.com, subject: hello
fromEmail: john@example.com, subject: programming question
fromEmail: mark@example.com, subject: welcome
Run Code Online (Sandbox Code Playgroud)

如果"编程问题"主题是最新的,那么在分组电子邮件时如何让MySQL选择该记录呢?

mysql sql group-by sql-order-by aggregate-functions

92
推荐指数
5
解决办法
19万
查看次数

sqlalchemy中的分组和计数功能

我想在sqlalchemy中使用"group by and count"命令.我怎样才能做到这一点?

python group-by sqlalchemy count

89
推荐指数
3
解决办法
8万
查看次数

在一个时间范围内分组为5分钟的间隔

我想要做的mySQL命令有些困难.

SELECT a.timestamp, name, count(b.name) 
FROM time a, id b 
WHERE a.user = b.user
  AND a.id = b.id
  AND b.name = 'John'
  AND a.timestamp BETWEEN '2010-11-16 10:30:00' AND '2010-11-16 11:00:00' 
GROUP BY a.timestamp
Run Code Online (Sandbox Code Playgroud)

这是我目前的输出声明.

timestamp            name  count(b.name)
-------------------  ----  -------------
2010-11-16 10:32:22  John  2
2010-11-16 10:35:12  John  7
2010-11-16 10:36:34  John  1
2010-11-16 10:37:45  John  2
2010-11-16 10:48:26  John  8
2010-11-16 10:55:00  John  9
2010-11-16 10:58:08  John  2
Run Code Online (Sandbox Code Playgroud)

如何将它们分组为5分钟的间隔结果?

我希望我的输出像

timestamp            name  count(b.name)
-------------------  ----  -------------
2010-11-16 10:30:00  John  2 …
Run Code Online (Sandbox Code Playgroud)

mysql sql group-by

81
推荐指数
7
解决办法
13万
查看次数

在MySQL中按月和按年分组

给定一个在每一行上都有时间戳的表,如何格式化查询以适应这种特定的json对象格式.

我试图将json对象组织成数年/月.

json将查询基于:

{
  "2009":["August","July","September"],
  "2010":["January", "February", "October"]
}
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止的查询 -

SELECT
    MONTHNAME(t.summaryDateTime) as month, YEAR(t.summaryDateTime) as year
FROM
    trading_summary t 
GROUP BY MONTH(t.summaryDateTime) DESC";
Run Code Online (Sandbox Code Playgroud)

查询正在崩溃,因为它(可预见地)将不同年份汇总在一起.

mysql sql group-by date

78
推荐指数
5
解决办法
12万
查看次数

如何在MySQL中按周分组?

Oracle的表服务器提供内置函数TRUNC(timestamp,'DY').此函数将上一个星期日的任何时间戳转换为午夜.在MySQL中执行此操作的最佳方法是什么?

Oracle还提供TRUNC(timestamp,'MM')将时间戳转换为发生月份的第一天的午夜.在MySQL中,这个很简单:

TIMESTAMP(DATE_FORMAT(timestamp, '%Y-%m-01'))
Run Code Online (Sandbox Code Playgroud)

但这个DATE_FORMAT技巧几周不会奏效.我知道这个WEEK(timestamp)功能,但我真的不想要一年内的周数; 这个东西是多年的工作.

mysql datetime data-migration group-by dayofweek

76
推荐指数
4
解决办法
9万
查看次数

T-SQL是否具有连接字符串的聚合函数?

可能重复:
SQL Server 2000中的内嵌类型函数?
连接行值T-SQL

我有一个我正在查询的视图,看起来像这样:

BuildingName    PollNumber
------------    ----------
Foo Centre      12        
Foo Centre      13
Foo Centre      14
Bar Hall        15
Bar Hall        16
Baz School      17
Run Code Online (Sandbox Code Playgroud)

我需要编写一个将BuildingNames组合在一起的查询,并显示一个PollNumbers列表,如下所示:

BuildingName    PollNumbers
------------    -----------
Foo Centre      12, 13, 14
Bar Hall        15, 16
Baz School      17
Run Code Online (Sandbox Code Playgroud)

我怎么能在T-SQL中做到这一点?我宁愿不为此写一个存储过程,因为它看起来有点矫枉过正,但我​​不是一个数据库人.看起来像SUM()或AVG()这样的聚合函数是我需要的,但我不知道T-SQL是否有一个.我正在使用SQL Server 2005.

t-sql sql-server group-by sql-server-2005 aggregate-functions

76
推荐指数
2
解决办法
8万
查看次数

Python Pandas:按分组和平均分组?

我有这样的数据帧:

cluster  org      time
   1      a       8
   1      a       6
   2      h       34
   1      c       23
   2      d       74
   3      w       6 
Run Code Online (Sandbox Code Playgroud)

我想计算每个群组每个组织的平均时间.

预期结果:

cluster mean(time)
1       15 ((8+6)/2+23)/2
2       54   (74+34)/2
3       6
Run Code Online (Sandbox Code Playgroud)

我不知道如何在熊猫中做到这一点,任何人都可以帮忙吗?

python group-by mean pandas

76
推荐指数
2
解决办法
16万
查看次数

Pandas按groupby求和,但不包括某些列

在Pandas数据帧上进行groupby的最佳方法是什么,但从该组中排除某些列?例如,我有以下数据帧:

Code   Country      Item_Code   Item    Ele_Code    Unit    Y1961    Y1962   Y1963
2      Afghanistan  15          Wheat   5312        Ha      10       20      30
2      Afghanistan  25          Maize   5312        Ha      10       20      30
4      Angola       15          Wheat   7312        Ha      30       40      50
4      Angola       25          Maize   7312        Ha      30       40      50
Run Code Online (Sandbox Code Playgroud)

我想通过列Country和Item_Code进行分组,并且只计算落在Y1961,Y1962和Y1963列下的行的总和.生成的数据框应如下所示:

Code   Country      Item_Code   Item    Ele_Code    Unit    Y1961    Y1962   Y1963
2      Afghanistan  15          C3      5312        Ha      20       40       60
4      Angola       25          C4      7312        Ha      60       80      100
Run Code Online (Sandbox Code Playgroud)

现在我这样做:

df.groupby('Country').sum()
Run Code Online (Sandbox Code Playgroud)

但是,这也会将Item_Code列中的值相加.有什么方法可以指定要在sum()操作中包含哪些列以及要排除哪些列?

python group-by aggregate pandas

76
推荐指数
3
解决办法
13万
查看次数