那些年遇到的DB2大坑

。_饼干妹妹 提交于 2021-01-21 11:20:41

                                  那些年遇到的DB2大坑

目录

                                  那些年遇到的DB2大坑

前言

一、DB2是什么?

二、使用DB2所遇到的问题

1.序列

2.函数

3.存储过程

三、DB2查询日期

1.当前日期(yyyy-MM-dd)

2.当前日期(yyyyMMdd)

3.上月末

四、DB2数据精度问题

1.在处理数据时常会遇到小数点数据精度问题,可以使用下面sql进行转换

2.在使用聚合函数时也会出现小数点数据精度问题(可以乘以丢失的小数位)

3.小数点前少0问题可以用拼接字符串解决

总结


 

前言

 记录在使用DB2数据库所遇到的大坑。

 

一、DB2是什么?

    DB2 是美国IBM公司开发的一套关系型数据库管理系统 ,通常用于银行等需要大型数据库的地方

二、使用DB2所遇到的问题

1.序列

查询序列时要加from表

select test.seq_xulie.nextval from sysibm.sysdummy1

2.函数

select  test.func_hanshu('canshu') bieming from sysibm.dual

 

3.存储过程

call cmas.proc_cunchunguocheng()

三、DB2查询日期

1.当前日期(yyyy-MM-dd)

select current date from sysibm.dual

 

2.当前日期(yyyyMMdd)

select replace( char(current date),'-','') from sysibm.sysdummy1

3.上月末

select to_char(last_day(add_months(to_date('20201212','yyyymmdd'),-1)) ,'yyyymmdd')from sysibm.dual;

四、DB2数据精度问题

1.在处理数据时常会遇到小数点数据精度问题,可以使用下面sql进行转换

select cast(round(cast(a as float)/b,2) as decimal(10,2)) from sysibm.sysdummy1

2.在使用聚合函数时也会出现小数点数据精度问题(可以乘以丢失的小数位)

sum(100/a*10000000)

3.小数点前少0问题可以用拼接字符串解决

select  to_char(cast(2.89 as decimal(10,2))) from sysibm.sysdummy1

总结

以上就是我在使用DB2所遇到的大坑,希望大神能够指点交流

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!