【原创】Oracle实现PGSQL的generate_series
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,PostgreSQL 有生成序列的函数,可以方便的进行造数据。这里我用ORACLE实现了PGSQL的generate_series函数功能。POSTGRESQL.t_girl=# select * f
千家信息网最后更新 2026年10月31日【原创】Oracle实现PGSQL的generate_series
PostgreSQL 有生成序列的函数,可以方便的进行造数据。这里我用ORACLE实现了PGSQL的generate_series函数功能。
POSTGRESQL.
t_girl=# select * from generate_series(1,10); generate_series----------------- 1 2 3 4 5 6 7 8 9 10(10 行记录)时间:1.290 mst_girl=# select * from generate_series(1,10,2); generate_series----------------- 1 3 5 7 9(5 行记录)时间:0.431 mst_girl=# select * from generate_series(1,10,3); generate_series----------------- 1 4 7 10(4 行记录)时间:0.879 mst_girl=# select * from generate_series(2,10,3); generate_series----------------- 2 5 8(3 行记录)时间:0.867 mst_girl=# select count(*) from generate_series(1,1000); count------- 1000(1 行记录)时间:1.142 mst_girl=# select to_char(now() - '1 day'::interval * n,'YYYY-MM-DD') as result from generate_series(1,10) g(n); result------------ 2015-12-08 2015-12-07 2015-12-06 2015-12-05 2015-12-04 2015-12-03 2015-12-02 2015-12-01 2015-11-30 2015-11-29(10 行记录)时间:17.284 ms
ORACLE:
12:10:34 SQL> select * from table(ytt_generate_series(1,10));COLUMN_VALUE ------------ 1 2 3 4 5 6 7 8 9 10 已选择 10 行。已用时间: 00: 00: 00.0212:10:36 SQL> select * from table(ytt_generate_series(1,10,2));COLUMN_VALUE ------------ 1 3 5 7 9 已用时间: 00: 00: 00.0012:10:54 SQL> select * from table(ytt_generate_series(1,10,3));COLUMN_VALUE ------------ 1 4 7 10 已用时间: 00: 00: 00.0012:10:56 SQL> select * from table(ytt_generate_series(2,10,3));COLUMN_VALUE ------------ 2 5 8 已用时间: 00: 00: 00.0212:11:04 SQL> select count(*) from table(ytt_generate_series(1,1000)); COUNT(*) ---------- 1000 已用时间: 00: 00: 00.1313:32:13 SQL> select to_char(sysdate - n,'YYYY-MM-DD') from table(ytt_generate_series(1,10));TO_CHAR(SY----------2015-12-082015-12-072015-12-062015-12-052015-12-042015-12-032015-12-022015-12-012015-11-302015-11-29已选择 10 行。已用时间: 00: 00: 00.01
附上代码:
-- Declare result set.create or replace type ytt_num is object( n number);/create or replace type numbers_table is table of ytt_num;/-- Function body.-- Created by ytt.-- 2015/12/9create or replace function ytt_generate_series(f_start_num number := 1, -- Start number.f_end_num number, -- Finish number.f_step_num number := 1 -- Step.)return numbers_table pipelinedis list numbers_table := numbers_table(); i number := 0; j number := 1;begin i := f_start_num; j := 1; -- Increase nested table's size. list.extend(f_end_num); -- Loop begin. while i <= f_end_num loop -- Initlization. list(j) := ytt_num(null); list(j).n := i; pipe row(list(j)); i := i + f_step_num; j := j + 1; end loop; return;end;/
时间
函数
选择
代码
功能
序列
数据
生成
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广东猪兼强互联网科技有限公司
厦门中拓互联网络科技有限公司
互联网科技深圳
新华互联网科技学院
盈实互联网科技
科技信息互联网
西安互联网科技
互联网科技公司官网
深圳天众互联网科技公司
互联网科技股有哪些
随着互联网科技发展
茂名市互联网科技产业园
宁夏科技产业互联网案例
江阴互联网智能科技产品进口
允成互联网科技有限公司融资
长沙互联网科技
合肥互联网科技公司公章图片
互联网方面的科技前沿
互联网金融科技元年
银川新华互联网科技学校原画
杭州互联网科技公司
互联网科技公司有哪些
重庆科技学院互联网
常德市电业局互联网科技部
互联网经济与金融科技
互联网科技大赛获奖感言
抖集互联网科技技术咨询
昆明中奇联合互联网科技
普陀区互联网教育科技管理办法
互联网领先科技成果宣传视频