从ORA中单纯递归出1到100的所有数字,该怎么写这个语句

godnoloveihavelove 2005-05-11 03:55:16
从ORA中单纯递归出1到100的所有数字,该怎么写这个语句
不要使用存储过程或者游标,谢谢
...全文
216 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
godnoloveihavelove 2005-06-29
  • 打赏
  • 举报
回复
newboy3205579(新手上路)
你说的我早就想过了,可以使用系统表来做,一般系统表会随时间的增加而增加,能到100W的条数,不过要是你们知道更好的方法也可以晚些时候告诉我,谢谢
newboy3205579 2005-05-14
  • 打赏
  • 举报
回复
不是的,不是我愿意,其实我也不喜欢这样,但是我们的楼主就是不喜欢你的seq,我刚开始的想法也是,要不这样,你可以找一个长度大于100的表,然后把他的rownum打出来算了,那样简单吧,高手可以把你的qq给我吗?有时间聊聊
zakat 2005-05-13
  • 打赏
  • 举报
回复
你这样搞有必要吗?你的语句的效率会怎么样?
有现成的seq不用,为什么要写这么麻烦的语句?
不明白
godnoloveihavelove 2005-05-12
  • 打赏
  • 举报
回复
CREATE SEQUENCE 方法可以创建多少 ,它算是表还是SQL中的一段,用过后就释放吗,类似动态SQL
godnoloveihavelove 2005-05-12
  • 打赏
  • 举报
回复
我的意思是写成SQL,不单纯只是
取得 1。。100
可能还有2。。200这样的情况,所以要写成SELECT
godnoloveihavelove 2005-05-12
  • 打赏
  • 举报
回复
如果在多人访问的情况下,这样创建会不会有问题
zakat 2005-05-12
  • 打赏
  • 举报
回复
你建立一个sequence,

CREATE SEQUENCE seq INCREMENT BY 1 START WITH 1 MAXVALUE 100 MINVALUE 1 CYCLE ;

然后select就可以了。

tobywusky 2005-05-12
  • 打赏
  • 举报
回复
做一个seq
godnoloveihavelove 2005-05-12
  • 打赏
  • 举报
回复
1
2
..
99
100

我这样说你还不理解什么意思,我就没办法了
newboy3205579 2005-05-12
  • 打赏
  • 举报
回复
当然你也可以搞成256*256或者更大,反正大于你想要的数字就可以,
然后用rownum控制就好了
newboy3205579 2005-05-12
  • 打赏
  • 举报
回复
按照我的想法,应用矩阵之间的交叉关系,如果两个表中有2条记录的话,那两个表交叉就是2*2=4
如果两个表中有4条记录的话,那两个表交叉就是4*4=16
如果两个表中有16录的话,那两个表交叉就是16*16=256

脚本如下:

select rownum from (
select aa.a from (
select a.a from (select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) a,
(select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) b
) aa,(
select a.a from (select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) a,
(select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) b
) bb
) aaa,
(
select aa.a from (
select a.a from (select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) a,
(select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) b
) aa,(
select a.a from (select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) a,
(select '1' as a,'2' as b from dual union all
select '1' as a,'2' as b from dual
) b
) bb

)bbb where rownum<101
realx 2005-05-11
  • 打赏
  • 举报
回复
单纯递归出1到100的所有数字?说具体点,是什么意思?
godnoloveihavelove 2005-05-11
  • 打赏
  • 举报
回复
在线等待

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧