|
|
1
5
或者,如果希望所有记录都具有该“第二大”值,则可以使用:
|
|
|
2
5
|
|
|
3
1
这也是一个很好的解决方案,更明显的是,如果您使用的是MSSQL,那么您选择的第一条记录就符合条件。
使用
|
|
|
4
1
中间查询:列出所有值,其中每个值至少存在一个大于该值的值 外部查询:列出那些值大于中间查询中任何值的所有值 所以中间查询得到除最大值以外的所有值,而外部查询列出除最大值(即最大值)之外大于所有值的所有值。 下面的调整后的查询应该可以做到这一点,但是如果有两行或更多行都包含第二大的值,您必须考虑该怎么做。
|
|
|
5
0
好吧,那么对于Oracle来说:
|
|
|
6
0
此解决方案仅使用ALL和ANY来获得结果。
所以,现在我们有一个结果集,其中最大值实际上是第二大值。现在,我们必须从结果集中排除所有较小的元素。因此,我们必须从第一个结果集中选择,而不是再次从bestelling中选择。
|
|
|
Johnny T · 基于当前值的SQL合并表[重复] 1 年前 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
ojek · 如何对SQL结果进行分组和编号? 1 年前 |
|
|
senek · 如何在PL/SQL中将选择结果(列)放入数组中 1 年前 |
|
|
Sax · 规范化Google表格(第一步) 1 年前 |
|
|
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 1 年前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 1 年前 |