那些年遇到的DB2大坑

                                  那些年遇到的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所遇到的大坑,希望大神能够指点交流

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章