Postgres存储过程
来源:互联网 发布:淘宝客返利怎么算 编辑:程序博客网 时间:2024/06/05 21:52
老师要求写个postgres的存储过程,第一次写存储过程,网上postgres存储过程的资料好少啊,查来查去都是两篇被转来转去,写了2天快崩溃了,还是没写出来,中午老师让写一个详细设计给他看,他又帮我修改了一下,最后终于完成了。
老师说写东西设计要比编码重要,我的思维是乱的,详细设计写不出来再让我写10天也还是写不出来,要学会怎么查。
真的意识到了设计分析的重要性。
不多说,说问题:
要求:value字段为text类型,存储了一些参数,参数中有换行,需要把value的值按换行符拆分出来存入另一张表。
分析:
0.先从pressData表中取得一行数据,获得value, transctionId,
1.将value字段拆分开,用split_part()
2.用循环控制取出value字段拆分内容,并依次存入数组
3.取出数组内容依次拆入convert表中transactionid,s001...s060
insert into tablename values(transactionid,v[0],v[1]...v[59])
拆分函数:
select split_part("Value",'/n',3)
from "pressureData"
order by "ID" desc
limit 1;
存储过程:
split1:
split2:
思路是这样的,在split1(int)中可以将一行中的value拆分出来,当时在split1(int)中写了个嵌套循环,没有实现想要的功能,不知道为什么,所以又写了个split2()来做循环调用split1(int),实验了一下可以成功。
经过多次修改得到最终版
将以上两个函数合并为一个函数并且做到从pressureData表将Value字段拆分出来,然后经过16进制转换(需调用另外一个存储过程16进制转10进制),再经过公式计算,将结果存入
sensorPressure表
16进制转10进制存储过程:
调用存储过程select * from pressureDataToSensorPressure();
另外加一个查询函数:
1.按每个月份统计数据把每月的数据统计出来
终于把项目做完了,告一段落,总结补充一下。
最终的存储过程:
- Postgres存储过程
- postgres 存储过程 游标 函数
- postgres 使用存储过程批量插入数据
- Postgres 数据库安装、配置、备份还原及存储过程
- MFC调用postgres数据库返回游标存储过程的疑惑
- jdbctempleate 执行postgres 数据库存储过程返回结果集
- jdbctempleate 执行postgres 数据库存储过程返回结果集
- postgres存储过程的创建及其返回类型
- Postgres 数据表文件存储位置
- postgres存储二进制数据java
- Postgres SQL存储函数参数使用说明
- postgres
- postgres
- postgres
- postgres
- Postgres
- Uber的底层存储从Postgres换成MySQL之后
- 存储过程
- 设计模式之 chain of responsibility
- 有关JSON以及JSON在PHP中的应用
- EXE 程序读写配置文件
- singleton模式
- 不得不看:必须看透的50个人生谬误
- Postgres存储过程
- 删除网页限制(禁止右键限制,禁止右键菜单,禁止复制,禁止选择)
- sql 2005怎么建立数据库关系图
- sql2000 行转列问题(不要用sql05的pivot,只能用sql2000的方法实现)
- 设计模式之 command
- PLDP培训心得
- IFS ERP索引空间不能扩展的临时解决方案
- SRU/SRW协议的异构库检索详解(一) _SRU
- 学习UML的两个网站