问题标签 [top-n]

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 投票
4 回答
153 浏览

oracle - 在编写 SQL 查询时需要帮助

在为以下功能编写 sql 查询时,我面临一个特殊的问题:考虑下表:

我想获取传递给查询的帐号的最新工作编号。例如:如果我通过 1234 作为帐号,我需要得到 1111113,如果我通过 1212,我应该得到 1111131。如何编写 PL/SQL 查询来实现这一点?我们将传递多个帐号,例如AccountNumber IN ('1234','1212'). 因此,对于每个帐号,我需要获取最新的工作编号。

目前我已经尝试过不使用 IN 这样的:

在 Java JDBC 中,我正在遍历帐号 ArrayList 并针对 Oracle db 执行 JDBC。但如您所知,如果有 4000 个帐户性能命中,这不是一个可行的解决方案。

你能帮忙写这个 SQL 查询吗?

编辑:这里最新的意思是最高的工作编号,例如:在 1111113 和 1111112 中。1111113 是最新数据

0 投票
1 回答
223 浏览

oracle - 根据 score 列获取前 10% 的记录

我有一个 SCORE 列。如何从 EMPLOYEE 表中选择得分最高的前 10%?

0 投票
2 回答
63 浏览

sql - 展示总体维护成本最高的驾驶室

我不确定如何获得总和的最大值。我以为我可以按降序显示它,然后使用“rownum = 1”,但这不起作用。有什么建议么?这是我的代码。

0 投票
2 回答
1419 浏览

oracle - 在 Plsql 中选择第二行

可以说我有下表:

如何从该表中选择价格第二高的行?注意:这必须在 Pl/SQL 中以与数据库无关的方式完成。是否可以在没有任何循环的情况下做到这一点?

  1. 我知道这是如何使用 Oracle 结构rownum或 mysql 结构来完成的limit,所以我不是在寻找那些。
0 投票
1 回答
692 浏览

sql - 查找第二高的 Oracle 查询

可能重复:
在 Plsql 中选择第二行

我有这个数据库电影(id:int,name:string,years:int,rating:float)

电影流派(movie_id:int,流派:字符串)

我需要找到对于每种类型,找到评分第二好的电影。这可以推广到找到第 i 部评分的电影吗?

0 投票
2 回答
3341 浏览

sql - 在 Oracle 中使用 ROWNUM 获得前 5 个结果

我的查询有问题吗?我在下面使用 AUDIT_ACTN 排序的前 5 个结果,然后是 AUDIT_STAMP。

我用它来检查我是否得到了正确的行。

问题是第二个查询的前 5 行与第一个查询的结果略有不同。只有 3 行是相同的,根据我的观察,另外 2 行是第二个查询的 rownum1 和 2。我希望你理解我的问题我真的需要帮助。谢谢!

0 投票
2 回答
16139 浏览

sql - 排序函数oracle sql

我是 sql 新手,正在做作业。有一个问题,我应该在哪里使用 rank 函数,但我不知道如何使用它。我试图在互联网上找到一些信息,但仍然有问题。我在这里发布问题,如果您有任何有用的文章或评论,请在此处发布。

谢谢,

0 投票
2 回答
141 浏览

sql - Oracle 检索最大记录

如何根据 Table_C 计时窗口使用 Table_A A_id 的引用从 Table_C 中检索最大 process_date。如果我想在计时窗口 20130101 12:09:00 到 12:21:00 中检索 Table_C id 和 max(process_date) 那么它应该返回id 为 1 和 process_date 为 12:20:01

0 投票
4 回答
141 浏览

sql - 使用表上的sql查询

我的员工表有 3 列:

  • emp_id,
  • emp_sal,
  • dept_id.

我需要为每个部门找到薪水最高的员工。我需要返回emp_idemp_saldept_id为那些员工。

提前致谢

0 投票
3 回答
7440 浏览

sql-server - SQL Server 2005 SELECT TOP 1 from VIEW 返回最后一行

我有一个可能包含多行的视图,如下所示:

在 SPROC 中,我需要设置一个参数,该参数等于视图第一行中第一列的值。像这样的东西:

但这总是返回视图的最后一行。

事实上,如果我只是自己运行子选择,我只会得到最后一行。
视图中有 3 行,TOP 2 按顺序返回 FIRST 和 THIRD 行。有 4 行,它按顺序返回前 3 行。然而,前 1 名仍然是最后一名。德普?!?

这有效..

..但是有人可以告诉我为什么第一个表现得如此愚蠢以及如何做我想做的事?正如评论中所解释的,没有任何有意义的列可以用来进行排序。我可以强制插入行的顺序为返回的顺序吗?

[编辑] 我还注意到:select top 1 rate from ([view definition select])也一次又一次地返回正确的值。[/编辑]