Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何构建一个精确返回n行数的查询_Sql_Oracle - Fatal编程技术网

Sql 如何构建一个精确返回n行数的查询

Sql 如何构建一个精确返回n行数的查询,sql,oracle,Sql,Oracle,如何构建一个精确返回n行数的查询 通过从dual中选择x可以检索到一行。关于n行如何?请尝试下面的查询以生成100个从1到100的数字: select level from dual connect by level <= 100 选择级别 来自双重 按级别连接请尝试以下查询以生成100个1到100之间的数字: select level from dual connect by level <= 100 选择级别 来自双重 按级别连接查询可能应该有一个ORDER by子句

如何构建一个精确返回
n
行数的查询


通过
从dual
中选择x可以检索到一行。关于
n
行如何?

请尝试下面的查询以生成100个从1到100的数字:

select level 
from dual 
connect by level <= 100
选择级别
来自双重

按级别连接请尝试以下查询以生成100个1到100之间的数字:

select level 
from dual 
connect by level <= 100
选择级别
来自双重

按级别连接查询可能应该有一个
ORDER by
子句,这样您就可以知道要返回的第一个
n
行。否则,如果您实际上是从表中选择的,那么它本质上是
n
随机行;这是对单行表的分层查询,返回层次结构中的行数。保证正好有N行,正好是Ben@jpmc26,我在Oracle11g中尝试了查询,在没有
ORDERBY
子句的情况下运行良好。谢谢,运行良好。但我不知道为什么我投了反对票@Ben我指的不是返回的行数;我指的是在包含100多行的表中返回哪些行。看见所以你不知道你得到的是哪一行。它可能是最后100个,或者前100个,或者中间100个。如果你不在乎哪100行,那没关系。或者我误解了这个问题?查询可能应该有一个
ORDER BY
子句,这样您就可以知道返回的是第一行
n
。否则,如果您实际上是从表中选择的,那么它本质上是
n
随机行;这是对单行表的分层查询,返回层次结构中的行数。保证正好有N行,正好是Ben@jpmc26,我在Oracle11g中尝试了查询,在没有ORDERBY子句的情况下运行良好。谢谢,运行良好。但我不知道为什么我投了反对票@Ben我指的不是返回的行数;我指的是在包含100多行的表中返回哪些行。看见所以你不知道你得到的是哪一行。它可能是最后100个,或者前100个,或者中间100个。如果你不在乎哪100行,那没关系。还是我误解了这个问题?