问题标签 [greatest-n-per-group]

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 投票
2 回答
1894 浏览

sql-server-2005 - SQL 查询,按日期按外键顺序选择前 2

我需要一个 SQL 查询,按PlanDate每个 ClientID 返回前 2 个计划。这一切都在一张表上,其中PlanIDPrimaryIDClientID是一个 foreignID。

这是我目前所拥有的 -->

显然,这仅返回 2 条记录,而我实际上需要最多 2 条记录ClientID

0 投票
2 回答
1030 浏览

sql - 选择每组最新的项目

可能重复:
检索每个组中的最后一条记录

我有 2 表产品和成本

产品

成本

我试过这个查询:

嗯,它显示了正确的生效日期,但该特定生效日期的成本不匹配。

所以我想选择与每件物品匹配成本的最新日期。

例如,我选择的日期是“2009-12-25”,1 项的记录是:

所以结果我应该得到00010000|2009-05-25|48,因为它小于我查询的日期,并且它是该项目的最新日期。然后我想在我的查询中显示每种产品的最新成本。

希望早日收到你的消息!谢谢!

0 投票
2 回答
7805 浏览

sql - 来自多个表连接的MYSQL前N行

就像,在 sql server 2005 中有 top 关键字,如果我在多个表上加入并且想要检索每个 ID/列的极端值,如何在 mysql 中选择前 1 行。限制限制没有。行返回,所以它不能解决我的问题。

0 投票
2 回答
532 浏览

sql - 检索指定日期的最新修订信息 (SQL)

替代文字

在上面的 FldID 52 = Description 和 FldID 54 = HistoryDe​​tail

替代文字

对于任何给定的日期,输出应该是该日期的最后一个条目。列也需要变成行。用户将提供 2 个日期。比如说 2010 年 3 月 2 日和 2010 年 3 月 3 日。

所以上述情况下的输出应该是

替代文字

由于第 6 版在表 A 中没有 FldID 52 的条目,[占位符 1] 应该有来自第 3 版的字(因为这是表 A 中 FldID 52 的第 6 版之前的最新版本)。

同样,
由于第 6 版在表 A 中没有 FldID 54 的条目,[占位符 2] 应该有来自第 5 版的字(因为这是第 6 版之前表 A 中 FldID 54 的最新词)。

由于第 8 版在表 A 中没有 FldId 54 的条目,[占位符 3] 应该有来自第 7 版的单词(因为这是表 A 中 FldID 54 的第 8 版之前的最新版本)。

我无法提出可以给我上述结果的查询。请帮忙。

更新

表 B 中字段的数据类型

替代文字

0 投票
1 回答
1940 浏览

sql - 带有两个表的 MySQL 时间戳和 GROUP BY

我有一个包含 3 个字段的表:

  • ID(不是唯一的,不是主键)
  • timestamp
  • marker

我想获得每个 distinct 的最后一个条目ID,但是当我这样做时
SELECT ID, max(timestamp) from table GROUP BY ID
,标记字段是错误的。

我有另一个包含以下字段的表:

  • ID(唯一,主键)
  • lat
  • lng

我想执行相同的查询,但也使用latandlng字段,但由于我无法执行第一步,我不知道应该使用哪种查询。我一直在尝试没有成功。

有人能指出我正确的方向吗?非常感谢。

0 投票
23 回答
973902 浏览

sql - 如何查询sql以获取每个用户的最新记录日期

我有一个表,它是关于用户何时登录的集合条目。

如何创建一个查询,为我提供每个用户的最新日期?

更新:我忘记了我需要一个与最新日期一致的值。

0 投票
12 回答
365345 浏览

sql - 我可以在 SQL 中执行 max(count(*)) 吗?

这是我的代码:

这是问题:

这是“约翰特拉沃尔塔”最忙碌的几年。显示他每年制作的电影数量。

这是表结构:

这是我得到的输出:

我需要获取count(*)最大的行。我该怎么做呢?

0 投票
4 回答
6421 浏览

sql - SQL 查询 - 按多列分组,但不同

我有一个投标表,如下:

现在在我的网站中,我需要向用户显示当前的出价;只有最高出价,但不重复同一用户。

这是我迄今为止取得的最好成绩。这给出了每个用户的最高出价的 CusID,并按升序排列。但我也需要为每个结果获取 BidTime。当我尝试将 BidTime 放入查询时:

我被告知“列 'Bid.BidTime' 在选择列表中无效,因为它不包含在聚合函数或 GROUP BY 子句中。”

因此我尝试了:

但这会返回所有行。没有区别。有关解决此问题的任何建议?

0 投票
3 回答
20383 浏览

sql - 从关系中选择最常见的值 - SQL 语句

我的数据库中有一个包含许多记录的表,其中一些记录共享相同的列值。例如

我想通过使用 SQL 语句返回最常见的软件的值。

因此,在上面的示例中,所需的 SQL 语句将返回“photoshop”,因为它出现的次数比任何其他软件都多。

这可能吗?

感谢您的时间。

0 投票
3 回答
71122 浏览

sql - SQL:查找每组的最大记录

可能重复:
检索每个组中的最后一条记录

我有一张表,其中包含三个字段和数据。

我想Total为 each选择具有最高值的记录Name,所以我的结果应该是这样的:

我尝试按名称按总顺序分组,但它给出了按结果分组的最高记录。有人可以指导我吗?