postgresql 存储过程时 如何把查到数据放到数组中,计算出数组中数字个数字
2015-10-29 18:47
736 查看
CREATE OR REPLACE FUNCTION 存储过程名(
参数1 integer,
传入字符数字 text, //'1,2,3,'
)
RETURNS void AS //无返回值
$BODY$
DECLARE
array1 text[]; // 定义第一个数组来接收传入‘1,2,3’切割放入数组中
array2 text[]; //定义第二个数组来接收从表中查出来数据
array3 text[];
count int;
num int
BEGIN
SELECT regexp_split_to_array(参数1,E'\\,') INTO array1; // 切割‘1,2,3,’放入数组1中
SELECT array_length(array1,1) INTO count; //得出数组中数字的个数放入count参数中
array2 := array(SELECT 表里字段 FROM 表 WHERE 表里匹配字段= 出入字符数字); //把从表里查出来的数据放数组2中
SELECT array_length(array2,1) INTO num; //计算出数组数字个放入参数num中
END
$BODY$
LANGUAGE plpgsql VOLATILE;
参数1 integer,
传入字符数字 text, //'1,2,3,'
)
RETURNS void AS //无返回值
$BODY$
DECLARE
array1 text[]; // 定义第一个数组来接收传入‘1,2,3’切割放入数组中
array2 text[]; //定义第二个数组来接收从表中查出来数据
array3 text[];
count int;
num int
BEGIN
SELECT regexp_split_to_array(参数1,E'\\,') INTO array1; // 切割‘1,2,3,’放入数组1中
SELECT array_length(array1,1) INTO count; //得出数组中数字的个数放入count参数中
array2 := array(SELECT 表里字段 FROM 表 WHERE 表里匹配字段= 出入字符数字); //把从表里查出来的数据放数组2中
SELECT array_length(array2,1) INTO num; //计算出数组数字个放入参数num中
END
$BODY$
LANGUAGE plpgsql VOLATILE;
相关文章推荐
- Oracle数据库更新时间的SQL语句
- MySQL创建用户与授权
- PLSQL Developer使用技巧整理
- 1、SQL可搜索可排序可分页存储过程, 2、范围内的随机时间 适用于sql 2008以上
- mysql海量数据的优化
- centos6.5 redis 安装配置及java调用
- oralce 动态sql 点位符示例
- PLSQL DEVELOPER 使用的一些技巧【转】 .
- Oracle数据日常使用脚本
- pentaho移植到MySQL
- 阿里云 redis性能测试
- mysql主从复制
- 解决hibernate向mysql插入中文乱码问题
- elasticsearch是否作为nosql 数据库
- mysql 错误解决方案-积累
- 在命令行中mysql导入数据库
- linux平台下误删oracle数据文件
- MySQL命令行导出数据库
- sql server 2008分页
- PetShop学习记录----数据库访问