您的位置:首页 > 其它

db2中的常用函数(不断更新中........)

2008-07-18 12:57 337 查看
db2中的常用函数:

函數名
函數解釋
舉例
SUBSTR(EXP1,EXP2)
SUBSTR(EXP1,EXP2,EXP3)

返回EXP1串自EXP2处开始,,长度为EXP3的子串
SELECT SUBSTR('CDNJFDJFJD',5) FROM BSEMPMS; 
SELECT SUBSTR('CDNJFDJFJD',5,2) FROM BSEMPMS;

ROUND(EXP1,EXP2)
返回EXP1小数点右边的第EXP2位置处开始的四舍五入值.
SELECT ROUND(2345.6789,2) FROM BSEMPMS
REPLACE(EXP1,EXP2,EXP3) 
用EXP3替代EXP1中所有的EXP2
SELECT CHAR(REPLACE('ROMANDD','NDD','CCB'),10) FROM BSEMPMS
REPEAT(EXP1,EXP2)   
返回EXP1重复EXP2次后的字符串
SELECT CHAR(REPEAT('REPEAT',3),21) FROM BSEMPMS
RAND() 
返回0和1之间的随机浮点数 
SELECT RAND() FROM BSEMPMS
[align=left]POSSTR(EXP1,EXP2)  [/align]
返回EXP2在EXP1中的位置
SELECT posstr('ABCDEFGH','D') FROM BSEMPMS
[align=left]NULLIF(EXP1,EXP2)  [/align]

如果EXP1=EXP2,则为NULL,否则为EXP1
COALESCE(Col_1,'')
字段空值替换函数
1. 输入参数为字符类型,且允许为空的,可以使用COALESCE(inputParameter,'')把NULL转换成'';

2. 输入类型为整型,且允许为空的,可以使用COALESCE(inputParameter,0),把空转换成0;
3. 输入类型为整型,且是非空的,不需要使用COALESCE函数,直接使用IS NULL进行非空判断。

LENGTH(EXP)
得到字符串exp的长度
values length('test'); --输出4
CAST(EXP1 AS EXP2)
类型转换函数:将exp1转换成exp2类型1.字符转换成整数:CAST('2' as integer);
2.转换成字符串:CAST(current date as char(20)) ;
3.转换成浮点数:CAST('22.02' as decimal(4,2))
LTRIM(EXP)
RTRIM(EXP)

DB2提供ltrim函数和rtrim函数,但偏偏不提供trim函数,如果你希望去除字符两端的空格,对不起,必须用ltrim(rtrim()) 的方式调用
1.去掉左空格:LTRIM(' ABC');
2.去掉右空格:LTRIM('ABC ');

3.去掉左右空格:LTRIM(RTRIM(' ABC'));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: