问题标签 [dense-rank]
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 - 按顺序排列的密集等级
我有这样的分配表
我需要一个计数器,只要 RCD 或公司组合发生变化,它就会增加,它应该由 effdt 订购。
我尝试了按 EMPLID、RCD、COMPANY 排序的 Dense_Rank 函数,它为我提供了计数器,但它不是按 effdt 排序的。
按 EFFDT 排序,给出增量计数器 1 ... 6
请帮助我找出我所缺少的。
sql - row_number / dense_rank(组和岛)
您将在下面找到可供使用的测试数据。我需要的是一个dense_rank、rank、row_number 任何函数来让行编号为“NoRequired”。我测试了每个 rank 和 row_number 函数,甚至尝试使用 WITH 语句,但还没有提出解决方案。
我想这里的主要问题是,一旦两者之间有不同的键值,“排名函数”就需要跳过一个序列......
sql-server - 如何在 SQL 中使用另一个数据集对一个数据集进行排名?
我有一个带有float
值的表。我想使用这些值的子集 (A) 来使用PERCENT_RANK()
. 然后,我想根据从第一个子集 (A) 派生的排名,将排名分配给表中值的第二个(非相交)子集 (B)。简单地将 (B) 中的值连接到 (A) 中的值是行不通的,因为子集 (B) 中的值通常不等于子集 (A) 中的值。在这种情况下,我可以使用“最接近值”方法或“线性插值”方法来获得排名。我更喜欢速度和简单,因为我要处理数十万行。
这是一个具体的例子(假设子集 A 是 Flag = 0 并且子集 B 是 Flag = 1):
sql - 从 Oracle 表中选择上传历史
我有一个包含工厂列表的表(工厂 ID 和工厂名称)
用户每月将一些数据上传到每个工厂的历史表中。并且同一月份的现有工厂数据也将被不同的用户覆盖。因此历史表如下所示。
现在,我需要为每个工厂和每个月生成一份报告,这是最新上传的(上传者和上传时间),如果没有上传,则应显示为“未上传”。这将看起来像下面的东西。
请帮助得到这个。我尝试了分析功能。但没有运气。
postgresql - 如何在尊重其原始顺序的同时对不同的值进行编号?
这是我的输入数据:
我想在单个查询(没有子查询或 CTE)中为每个不同的value
. 但是,我也希望这些数字根据关联来提升position
- 即,value
应该根据其最低分配不同的数字position
。
假设:
- 每一行总是有一个唯一的
position
value
不保证每行唯一- 不同值的数量仅用于序数目的,例如
distinct_values
1-2-3 或 3-8-14 无关紧要
所需的输出是:
我可以使用DENSE_RANK
数字不同的值来接近:
结果显然忽略了position
:
有更好的窗口功能吗?
sql - MS Access 密集等级
所以我试图找到一种方法来复制我的 MS Access 表上的 denserank() 函数。我发现以下查询很有帮助:
此查询非常适合作为复制rank()
函数的一种方式。但是,我想修改此查询,以便它进行复制denserank()
。换句话说,组的排名现在看起来像这样:
秩
0
0
0
3
3
3
6
6
6
相反,我正在寻找的是:
秩
0
0
0
1
1
1
2
2
2
我正在尝试实现的另一个示例可以在示例 #3 中看到:
https://support.microsoft.com/en-us/kb/208946
任何想法将不胜感激!提前致谢!
sql - 在 Postgres 中使用 DENSE_RANK FIRST ORDER BY 的 Oracle 语句
有人能告诉我如何在 Postgres SQL 中转换以下 Oracle SQL 语句吗?我不明白...
sql - SQL Server:将数据分离到动态存储桶中
请帮助我使用可以将数据动态存储到范围中的 SQL Server 查询。
这是我的源数据:
预期输出:
DENSE、RANK 和 NTILE 似乎没有给我这样的排名。该范围是动态的,之前不知道。任何帮助高度赞赏。
分桶规则为:
每个桶包含一个与平均值相差 10% 的数据集
sql - SQL Server 与 Postgresql 中的 ORDER BY
我试图在一个巨大的数据集上运行 ORDER BY 并产生密集的等级值以根据密集等级提取不同的行数。后来,我在整个过程中使用密集等级值作为代理键来继续中间结果并将其进一步用于一些性能测试。
我面临的问题:-
我遇到的问题是我将数据集从 Matrix(postgresql)(PRODUCTION environment) 迁移到 SQL Server(New environment) 并实现了密集秩函数。但是由于 SQL Server 和 Matrix 中的 ORDER BY 子句行为导致的密集排名结果不同,我无法进一步验证代码和结果。
测试示例:-
SQL Server 输出:-
矩阵(Postgresql)输出:-
有人能告诉我为什么 ORDER BY 的行为在两个不同的数据库环境之间存在差异吗?任何帮助,将不胜感激。谢谢。
sql - 在visual foxpro中按分区排名
我有下表看起来像
当我编写以下 SQL Server 2008 代码时
它产生以下结果
这正是我想要的。
现在,我想在 Visual FoxPro 9 SQL 中编写同样的东西。我使用recno()进行了尝试,如此处所示;这对我的记录进行了编号,但似乎不支持分区功能,并且 VFP 9 SQL 似乎不支持相关子查询。我知道我可以用光标和扫描来做到这一点,但我不想那样做。有什么建议么?