问题标签 [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.
sql - 获取列的最大值所在的行
桌子:
我想获取每个 UserId 的 Max(Date) 的 UserId 值。即,每个具有最新日期的 UserId 的值。有没有办法简单地在 SQL 中做到这一点?(最好是甲骨文)
更新:对任何歧义道歉:我需要获取所有用户 ID。但是对于每个 UserId,只有该用户具有最新日期的那一行。
sql - 获得每个组的最佳结果(在 Oracle 中)
我如何能够在 oracle 查询中为多个组获得 N 个结果。
例如,给定下表:
有更多的行有更多的职业。我想从每个职业中获得三名员工(比如说)。
有没有办法在不使用子查询的情况下做到这一点?
mysql - MySQL 查询:限制 JOIN
假设我有两个要加入的表。分类:
和项目:
我想要一个返回类别和第一个(并且只有第一个)项目名称的查询:
有没有办法我可以获得随机结果,例如:
谢谢!
sql - 为每个类别选择前 10 条记录
我想在一个查询中返回每个部分的前 10 条记录。任何人都可以帮助如何做到这一点?节是表中的列之一。
数据库是 SQL Server 2005。我想按输入的日期返回前 10 名。部分是业务、本地和功能。对于某个特定日期,我只想要前 (10) 个业务行(最近的条目)、前 (10) 个本地行和前 (10) 个特征。
mysql - MySQL 中的数组切片/group_concat 限制
假设我有一张桌子:
显然SELECT a, GROUP_CONCAT(b SEPARATOR ',') GROUP BY a
会给我
但是如果我只想获得有限数量的结果,比如 2,例如:
有任何想法吗?
mysql - MySQL - 每个 WHERE_IN 问题的棘手限制
我正在寻找执行以下操作(请参阅伪代码);我想为每个 gd.id(7、11 或 9)选择 4 行。我错误地使用了限制,因为总共只产生了 4 行。任何人都知道如何更改此查询以实现我的目标?
谢谢!
冰
ps 也许是某种类型的 group_by?
sql - 获取 SQL 中另一列的每个值的最常见值
我有一张这样的桌子:
对于每个国家,我都想获得最常吃的食物。我能想到的最好的(我正在使用 postgres)是:
在最后一条语句中,需要 GROUP BY 和 max() 来打破关系,其中两种不同的食物具有相同的计数。
对于概念上简单的东西,这似乎需要做很多工作。有没有更直接的方法来做到这一点?
sql - 每个标准的限制
我有一个文章表和一个类别表。我想为每个类别获取 7 篇文章。目前我有这个,但在大桌子上速度很慢,所以它不是一个真正的解决方案:
使用解释,它向我显示它正在执行连接类型 ALL 和 REF。选择类型是 PRIMARY 和 DEPENDENT SUBQUERY 。
有更好的解决方案吗?
sql - 需要有关 SQL 中复杂 Join 语句的帮助
如何在具有稀疏日期数的表和具有详尽日期数的另一个表之间连接,以使稀疏日期之间的间隔采用前一个稀疏日期的值?
说明性示例:
期望的结果:
更新:
几个人建议了一个相关的子查询来完成所需的结果。(相关子查询 = 包含对外部查询的引用的子查询。)
这将起作用;但是,我应该注意到我使用的平台是 MySQL,其相关子查询的优化很差。有什么方法可以在不使用相关子查询的情况下做到这一点?
mysql - 如何从 mysql 表中选择最新的日期记录集
我将各种 rpc 调用的响应存储在 mysql 表中,其中包含以下字段:
method
为和的所有现有组合选择最新响应的最佳方法是什么id
?
对于给定的方法/ID,每个日期只能有一个响应。
对于给定日期,并非所有呼叫组合都必须存在。
有数十种方法,数千个 id 和至少 365 个不同的日期
样本数据:
期望的结果:
(我不认为这是同一个问题 - 它不会给我最新的response
)