【原创】Oracle实现PGSQL的generate_series
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,PostgreSQL 有生成序列的函数,可以方便的进行造数据。这里我用ORACLE实现了PGSQL的generate_series函数功能。POSTGRESQL.t_girl=# select * f
千家信息网最后更新 2025年02月04日【原创】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安全错误
数据库的锁怎样保障安全
类图转化为关系数据库
数据库基础与应用实验题
对等网络标识管理服务器
什么属于维护网络安全的措施
安全威胁数据库
如何查服务器的中间件情况
服务器ssd盘怎么用到台式机上
宝德服务器管理口地址
服务器远程登陆不上
长江公司是一家软件开发企业
天津网络安全宣传周筹备
通辽节能软件开发公司
ecs服务器安全狗
软件开发有哪些板块
铜城区网络安全执法监督检查
点餐系统数据库设计代码
学校国家网络安全周活动计划
电脑服务器不备案可以吗
河南大学网络安全场地
数据库dll可以删除吗
拉萨软件开发公司建设方案
网页信息如何存储到数据库
数据库的基础和核心是
庆阳市公安局开展网络安全
山东的网络安全教育平台
数据库 存放文件
软件开发人员外包
网络安全执法检查重点
可视化智慧消防软件开发
易云互联网科技有限公司