问题标签 [row-number]
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-server-2005 - 如何从具有特定行号的表中删除或选择行?
我有一个关于 Microsoft SQL Server 2005 的问题。如何从具有特定行号的表中删除或选择行?
sql-server - 如何一次获取 sql 表中所有行的批处理?
我有一张有 4000 万行的表。
我想一次提取大约 200 万个并“处理”它们。
为什么?
处理超过 1000 万行的 Cos 处理会降低性能,并且经常超时。(我需要这个工作独立于数据大小,所以我不能一直增加超时限制。)
另外,我正在使用 SQL Server。
sql - 在创建/插入时添加序列号 - Teradata
在 oracle 中,我们将在创建此表时在 select 上使用 rownum。现在在 teradata 中,我似乎无法让它工作。除非我一起使用 3 列,否则没有可以排序的列并具有唯一值(大量重复)。
旧的方式是这样的,
sql - 如何加快 Oracle 中的 row_number?
我有一个看起来像这样的 SQL 查询:
本质上,是 ORDER BY 部分让事情变慢了。如果我要删除它,EXPLAIN 成本会下降一个数量级(超过 1000 倍)。我试过这个:
但这并没有给出正确的结果。有什么简单的方法可以加快速度吗?还是我必须花更多时间使用 EXPLAIN 工具?
sql - 使用 Row_Number、order by 和 where 子句的 SQL 查询
我有以下 SQL 查询:
我要做的是选择查询的前 100 条记录
以下是问题:
显然,该
order by
条款不起作用。我注意到我必须在order by 2 DESC
之后添加另一个子句(...) from ATABLE
才能使我的查询正常工作。有什么我做错了吗?还是预期的行为?如何添加
where
子句?假设我只需要选择表的前 100 条记录where COLUMN1 like '%value%'
。我尝试在之后添加 where 子句,(...) from ATABLE
但它产生了错误......
帮助?谢谢。
PS:我使用的是 Oracle 10g R2。
subsonic - SubSonic 和 Paging 使用 ROW_NUMBER ()
如何使用 SubSonic 启用 ROW_NUMBER () 进行分页?
sql - SQL Server 中 Oracle 的 RowID 等价物
什么是 SQL Server 中 Oracle 的 RowID 的等价物?
sql - 如何使用 ROW_NUMBER()?
我想用ROW_NUMBER()
得到...
- 要获得
max(ROW_NUMBER())
--> 或者我想这也是所有行的计数
我试着做:
但它似乎没有工作......
- 使用给
ROW_NUMBER()
定的信息,即。如果我有一个名字,我想知道这个名字来自哪一行。
我认为这与我为 #1 尝试的类似
但这也不起作用......
有任何想法吗?
mysql - 在另一个查询中引用 MySQL 子选择
我有一个基本的 MySQL 表terms,由id和term字段组成。
我想创建一个按字母顺序排序的字典索引(在字面意义上),它将在所选术语上方列出 10 个 10 个术语,在其下方列出 20 个。这方面的一个例子可以在这里找到http://www.urbandictionary.com/define.php?term=GD2&defid=3561357在左栏中,您可以看到突出显示的当前术语,以及上面的一些术语,还有一些在下面,全部按字母顺序排序。
众所周知,MySQL 不支持 ROW_NUMBER() 或类似的函数,因此我们最终求助于用户变量和子选择。我也无法使用用户定义的变量创建视图,因为 MySQL 不允许这样做。这是我设法想出的(并且有效):
第一个 SELECT 只是在整个按字母顺序排序的术语表中找出目标术语的行号。第二个 SELECT 使用该信息在其上方获取 10 个术语,在其下方获取 20 个术语。
我想知道是否有办法避免在第二个 SELECT 查询中运行子选择,而只引用第一个别名为ordered。是否有更有效的方法来完成此操作而无需手动创建临时表?我在这里做错了什么?
c# - 组内的 LINQ-to-objects 索引 + 用于不同的分组(又名 ROW_NUMBER 与 PARTITION BY 等效)
经过大量的谷歌搜索和代码实验,我被一个复杂的 C# LINQ-to-objects 问题难住了,在 SQL 中,使用一对 ROW_NUMBER()...PARTITION BY 函数和一个或两个子查询很容易解决这个问题。
换句话说,这就是我在代码中尝试做的事情——基本要求是从列表中删除重复的文档:
- 首先,按 (Document.Title, Document.SourceId) 对列表进行分组,假设(简化的)类定义如下:
/li> -
在该组中,为每个文档分配一个索引(例如,索引 0 == 此来源中具有此标题的第一个文档,索引 1 = 此来源中具有此标题的第 2 个文档等)。我喜欢 SQL 中的 ROW_NUMBER() 等价物!
- 现在按 (Document.Title, Index) 分组,其中 Index 是在步骤 #2 中计算的。对于每个组,仅返回一个文档:具有最低 Document.SourceId 的文档。
第 1 步很简单(例如 codepronet.blogspot.com/2009/01/group-by-in-linq.html),但我对第 2 步和第 3 步感到困惑。我似乎无法构建一个无红色曲线的 C# LINQ 查询来解决所有三个步骤。
Anders Heilsberg 在此线程上的帖子是我认为如果我能正确使用语法,那么上面的步骤 #2 和 #3 的答案。
我宁愿避免使用外部局部变量来进行索引计算,如 slodge.blogspot.com/2009/01/adding-row-number-using-linq-to-objects.html 上所建议的那样,因为该解决方案会中断如果外部变量被修改。
最佳情况下,可以先完成按标题分组的步骤,因此“内部”分组(首先按 Source 计算索引,然后按 Index 过滤重复项)可以对每个“按标题”中的少量对象进行操作组,因为每个按标题组中的文档数通常低于 100。我真的不想要 N 2解决方案!
我当然可以使用嵌套的 foreach 循环来解决这个问题,但这似乎是使用 LINQ 应该很简单的问题。
有任何想法吗?