问题标签 [group-by]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
48936 浏览

sql - 如何使用 T-SQL 分组依据

我知道我需要(尽管我不知道为什么)GROUP BY在使用任何聚合函数(如count, sum,avg等)的 SQL 查询末尾有一个子句:

还有GROUP BY什么时候有用,性能影响是什么?

0 投票
14 回答
366791 浏览

sql - 如何在 PostgreSQL 'group by' 查询中连接字符串字段的字符串?

我正在寻找一种通过查询连接组内字段字符串的方法。例如,我有一张桌子:

我想按 company_id 分组以获得类似:

在 mySQL 中有一个内置函数来做这个group_concat

0 投票
4 回答
3593 浏览

sql - 从时间间隔数据中绘制每小时条形图的优雅方法?

我有一个显示开始和停止时间的时间表条目列表。它位于 MySQL 数据库中。我需要根据这些数据创建条形图,底部是一天中的 24 小时,以及一天中每个小时的工时。

例如,如果 Alice 从 15:30 到 19:30 工作而 Bob 从 12:15 到 17:00 工作,则图表将如下所示:

示例图表

我现在有一个 WTFey 解决方案,其中涉及到 DY 列或类似的电子表格。所需的分辨率是 15 分钟间隔。

我假设这是最好在数据库中完成的事情,然后导出以创建图表。如果我遗漏任何细节,请告诉我。谢谢。

0 投票
26 回答
291654 浏览

sql - GROUP BY 和 DISTINCT 之间有什么区别吗

前几天我学到了一些关于 SQL 的简单知识:

与以下结果相同:

我很好奇的是,SQL 引擎处理命令的方式有什么不同,还是它们真的是一回事?

我个人更喜欢独特的语法,但我相信它比其他任何东西都更不习惯。

编辑:这不是关于聚合的问题。GROUP BY了解 with 聚合函数的使用。

0 投票
6 回答
11523 浏览

activerecord - 获取 ActiveRecord 中每个组的最小值/最大值

这是一个古老的问题,给定一个具有“类型”、“品种”和“价格”属性的表格,您可以获取每种类型的最低价格的记录。

在 SQL 中,我们可以通过以下方式做到这一点

我们或许可以通过以下方式模仿:

还有比这更好的实现吗?

0 投票
14 回答
55688 浏览

sql - 如何返回按 NULL 和 NOT NULL 分组的记录?

我有一个包含一processed_timestamp列的表——如果一条记录已被处理,那么该字段包含它被处理的日期时间,否则它为空。

我想编写一个返回两行的查询:

那可能吗?

更新:表很大,所以效率很重要。我可以只运行两个查询来分别计算每个总数,但如果可以避免的话,我想避免两次击中表格。

0 投票
4 回答
34052 浏览

.net - LINQ 中“最受欢迎”的 GROUP BY?

假设有一个标签表,如 stackoverflow 问题标签:

TagID (bigint), QuestionID (bigint), Tag (varchar)

使用 LINQ 获取 25 个最常用标签的最有效方法是什么?在 SQL 中,一个简单的 GROUP BY 就可以:

我写了一些有效的 LINQ:

像,真的吗?这不是超级冗长吗?可悲的是,我这样做是为了保存大量查询,因为我的 Tag 对象已经包含一个 Frequency 属性,否则如果我实际使用该属性,则需要用数据库检查每个 Tag。

所以我然后将这些匿名类型解析Tag 对象:

我是 LINQ 新手,这似乎不对。请告诉我它是如何真正完成的。

0 投票
3 回答
388 浏览

tsql - 如何从签入和签出列表中计算时间跨度?

我正在编写一个简单的时间跟踪程序来管理我自己的项目。我非常喜欢在数据库中保存报告代码,所以我一直在尝试创建一些 sprocs 来生成发票和时间表等。

我有一个表,其中包含时钟操作、IE“Punch In”和“Punch Out”。它还包含执行此操作的用户、与该操作关联的项目以及当前日期/时间。

我可以从此表中选择以获取特定时间/项目/和用户的打卡信息,但我想将其汇总,以便每个打卡和打卡都从 2 行转换为包含总时间的单行。

例如,这是一个示例输出:

其中 ActionType 1 是“ClockIn”,ActionType 2 是“ClockOut”。为简洁起见,我还删除了 User、Project 和 Description 列。

我需要在纯 SQL 中生成一个结果集,例如:

对于每个 ClockIn / ClockOut 对。

我认为这实际上会相当简单,我只是不太确定采用哪种方法。

编辑:用户将能够同时进入多个项目,尽管首先将结果集缩小到单个项目,这对这里的逻辑没有任何影响。

0 投票
2 回答
9480 浏览

java - 按时间间隔休眠组

我有一个带有日期时间类型的时间戳字段的表。我需要将定义的开始时间和结束时间之间的数据聚合到代表等长时间间隔的 x 组中,其中 x 作为函数参数提供。

使用 Hibernate 执行此操作的最佳方法是什么?

编辑:一些解释

mysql表:

实体类:

我正在寻找执行类似操作的 HQL 查询

其中整个时间段被分成 x 个大小相等的时间间隔。

例子:

需要按 1.5 小时(48 小时/32 小时)的时间间隔进行分组:

0 投票
4 回答
67546 浏览

c# - C# List<> GroupBy 2 个值

我在 Framework 3.5 上使用 C#。我希望通过两个属性快速分组一个通用列表<>。为了这个例子,假设我有一个带有 CustomerId、ProductId 和 ProductCount 属性的 Order 类型的列表。如何使用 lambda 表达式获得按 CustomerId 和 ProductId 分组的 ProductCounts 的总和?