Pet*_*ang 69
你的问题是很难理解的,但如果你想从选择号码1
来100
,那么这应该做的伎俩:
Select Rownum r
From dual
Connect By Rownum <= 100
Run Code Online (Sandbox Code Playgroud)
Ult*_*mit 24
ORACLE PL/SQL中另一个有趣的解决方案:
SELECT LEVEL n
FROM DUAL
CONNECT BY LEVEL <= 100;
Run Code Online (Sandbox Code Playgroud)
Luk*_*der 12
这样做很难.使用awesome MODEL
子句:
SELECT V
FROM DUAL
MODEL DIMENSION BY (0 R)
MEASURES (0 V)
RULES ITERATE (100) (
V[ITERATION_NUMBER] = ITERATION_NUMBER + 1
)
ORDER BY 1
Run Code Online (Sandbox Code Playgroud)
证明:http://sqlfiddle.com/#!4/ d41d8/ 20837
使用Oracle的子查询工厂子句“ WITH”,您可以选择1到100之间的数字:
WITH t(n) AS (
SELECT 1 from dual
UNION ALL
SELECT n+1 FROM t WHERE n < 100
)
SELECT * FROM t;
Run Code Online (Sandbox Code Playgroud)
如果你希望你的整数绑定在两个整数之间(即从1以外的其他东西开始),你可以使用这样的东西:
with bnd as (select 4 lo, 9 hi from dual)
select (select lo from bnd) - 1 + level r
from dual
connect by level <= (select hi-lo from bnd);
Run Code Online (Sandbox Code Playgroud)
它给:
4
5
6
7
8
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
115393 次 |
最近记录: |