Oracle vs PostgreSQL Develop(17) - ARRAY
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,PostgreSQL可用ARRAY来替代Oracle中的collection type,包括associative array/Varrays (Variable-Size Arrays)/Neste
千家信息网最后更新 2026年11月02日Oracle vs PostgreSQL Develop(17) - ARRAY
PostgreSQL可用ARRAY来替代Oracle中的collection type,包括associative array/Varrays (Variable-Size Arrays)/Nested Tables
Oracle
简单举个例子:
drop table if exists employee;create table employee(id int,name varchar(30),department varchar(30),salary float);insert into employee(id,name,department,salary) select rownum,substrb(object_name,1,30),substrb(object_name,1,30),1000 from dba_objects;DECLARE TYPE EmpTabTyp IS TABLE OF employee%ROWTYPE INDEX BY PLS_INTEGER; emp_tab EmpTabTyp; i int := 0;BEGIN /* Retrieve employee record. */ for c1 in (select * from employee) loop emp_tab(i).id := c1.id; emp_tab(i).name := c1.name; emp_tab(i).department := c1.department; emp_tab(i).salary := c1.salary; i := i+1; end loop; -- SELECT * INTO emp_tab(100) FROM employee WHERE id = 100;END;/更简单的做法是使用bulk collection
DECLARE TYPE EmpTabTyp IS TABLE OF employee%ROWTYPE INDEX BY PLS_INTEGER; emp_tab EmpTabTyp; i int := 0;BEGIN /* Retrieve employee record. */ select id,name,department,salary bulk collect into emp_tab from employee;END;/PostgreSQL
使用ARRAY
drop type record_of_employee;CREATE TYPE record_of_employee AS (id int,name varchar(30),department varchar(30),salary float);do$$declare employees record_of_employee[];begin select array_agg(employee) into employees from employee limit 1; raise notice 'id is %',employees[1].id; raise notice 'name is %',employees[1].name;end$$;对于Associative array indexed by string,PG的数组则替代不了.
DECLARE -- Associative array indexed by string: TYPE population IS TABLE OF NUMBER -- Associative array type INDEX BY VARCHAR2(64); -- indexed by string...参考资料
PL/SQL Collections and Records
Oracle PL/SQL Collections: Varrays, Nested & Index by Tables
Collections in Oracle PL/SQL
Working with Collections
Take a Dip into PostgreSQL Arrays
例子
做法
参考资料
数组
资料
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技和互联网公司
智能科技公司是互联网公司吗
致骋互联网科技
九亚互联网科技
朗涯互联网科技
齐家互联网科技有限公司
互联网科技汛
华夏互联网科技业
互联网科技与大数据专业
辽宁互联网新科技
996高科技互联网公司
互联网在线教育科技创业
互联网方面的科技前沿
中国互联网有什么科技
互联网营销推广黑科技
互联网科技融合创新
有人说阿里系是互联网科技企业
图游互联网科技
银川新华互联网科技学校原画
前海云享互联网科技
中国互联网科技工作委员会毛军
青岛互联网科技公司
上海挚品互联网科技
顺玮阁互联网科技
互联网科技素材视频竖屏
衡水科技产业互联网平台
银川新华互联网科技学校联系电话
悟空问答互联网科技
上海互联网科技园景观
网互联网络科技