DB2-SQL中常用的函数

1、判断函数


 1. VALUE:SERIALNO 为null或者为空时,返回todo
 例子:select nvl(SERIALNO ,todo) from EXECUTETASK e ;
 
 2. COALESCE:SERIALNO 为null或者为空时,返回todo
 例子:select COALESCE(SERIALNO ,todo) from EXECUTETASK e ;

 3. nvl:e1 为null或者为空时,返回e2
 例子:nvl(e1,e2),如果e1为null,则返回e2,否则返回e1本身;
 
***说明:以上三个函数在DB2中功能相同,都是第一个参数为null或者为空时,返回第二个参数,
区别在于,oracle支持nvl,所以大家尽量用nvl,方便以后数据库迁移***

 4. nvl2
 例子:nvl2(e1,e2,e3),如果e1为null或者为空,则返回e3,否则返回e2;

 5. nullif: 如果两个参数相等,则返回null,否则返回参数1
 例子:nullif(arg1,arg2),
 select nullif(linesum1,linesum2)  from cl_info ;

2、字符串函数

instr:instr('源字符串','要查找的字符串差',从第几个字符开始,要找到第几个匹配的字符)   
例子 :select instr(userid,'6',1,4) from user_info  where loginid='1';
concat(arg1,arg2):连接两个字符串arg1和 arg2,
例子:select concat(CUSTOMERNAME,'@'||lineid) from cl_info;
insert(arg1,pos,size,arg2):将arg1从pos处删除size个字符,将arg2插入该位置
left(arg,length):返回arg最左边的length个字符串
locate(arg1,arg2,<pos>):在arg2中查找arg1第一次出现的位置,指定pos,则从arg2的pos处开始找arg1第一次出现的位置
posstr(arg1,arg2):返回arg2第一次在arg1中出现的位置
repeat(arg1,num):返回arg1被重复num次的字符串
replace(arg1,arg2,arg3):将在arg1中所有的arg2替换成arg3
right(arg,length):返回arg最右边的length个字符串
space(num):返回一个包含num个空格的字符串
substr(arg1,pos,<length>):返回arg1中pos位置开始的length个字符,如果没指定length,则返回剩余的字符

3、分析函数

ROW_NUMBER () OVER (PARTITION BY xxx ORDER BY bbb):根据xxx分组后,对每一个分组根据bbb排序,并且展示行数

4、类型转换函数

digits(arg):返回arg的字符串表示法,arg必须为decimal

5、在IDE中调用系统db2cmd命令函数

IDE如dbeaver等

CALL SYSPROC.ADMIN_CMD('REORG TABLE XDGL.WD_YZT_CUS_INFO'):重组表

觉得有用的,别忘了点赞!@收藏!
如果帮助到了各位弟弟妹妹,大哥大姐,别忘了点赞收藏+关注!素质三连!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵小哥要冲啦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值