相关疑难解决方法(0)

Oracle/SQL:为什么查询"SELECT*FROM records WHERE rownum> = 5 AND rownum <= 10" - 返回零行

为什么以下查询返回"零"记录:

SELECT * FROM records WHERE rownum >= 5 AND rownum <= 10

     OR

SELECT * FROM records WHERE rownum >= 5 

以下查询返回正确的记录:

SELECT * FROM records WHERE rownum <= 15

问候,
- Ashish

sql oracle

10
推荐指数
1
解决办法
2万
查看次数

获得3个最高工资的查询说明

任何人都可以解释以下查询获得3个最高薪水吗?

select distinct sal
  from emp a
where 3 >= (select count(distinct sal)
              from emp b
            where a.sal <= b.sal)
order by a.sal desc;
Run Code Online (Sandbox Code Playgroud)

有人建议我使用上面的查询来获得3个最大值.表中的工资.我不明白查询的下面部分发生了什么:

3>= (select count(distinct sal)
       from emp b
     where a.sal <= b.sal) ;
Run Code Online (Sandbox Code Playgroud)

有人能解释一下吗?如果还有其他方法可以得到相同的结果,请咨询我

sql oracle

2
推荐指数
1
解决办法
6668
查看次数

标签 统计

oracle ×2

sql ×2