DB2数据库函数大全

来源:互联网 发布:白苹果的数据能恢复吗 编辑:程序博客网 时间:2024/06/03 14:28

DB2 内置的函数真的是很多,要精通每个函数几乎是不可能的,所以本文并不打算介绍每个函数的具体用法,而是提供一个概览,让您了解每个函数的功能,这样,当你感觉你需要某些功能的函数时,再学习它们的具体用法也不迟。


DB2 内置函数大体分为以下几类:

  1. 聚合函数  
  2. 类型转换函数  
  3. 数学函数  
  4. 字符串函数  
  5. 日期时间函数  
  6. XML 函数  
  7. 分区函数  
  8. 安全函数  
  9. 其他  
下面我们就了解一下每类都有哪些函数,以及这些函数的功能。


一:聚合函数

VALUE函数 语法:VALUE(EXPRESSION1,EXPRESSION2) VALUE函数是用返回一个非空的值,当其第一个参数非空,直接返回该参数的值,如果第一个参数为空,则返回第一个参数的值。 COALESCE函数 语法:COALESCE(ARG1,ARG2...) COALESCE返回参数集中第一个非null参数。用法类似于VALUE函数。 LENGTH函数 语法:LENGTH(ARG) LENGTH函数返回参数的长度。 LCASE、LOWER函数 语法:LCASE()、LOWER() LCASE、LOWER函数返回定长、变长字符串的小写形式。 UCASE、UPPER函数 语法:UCASE()、UPPER() UCASE、UPPER函数返回定长、变长字符串的大写形式。 LTRIM、RTRIM函数 语法:LTRIM()、RTRIM() LTRIM、RTRIM函数从CHAR、VARCHAR、GRAPHIC或者VARGRAPHIC中去掉左侧或右侧的空格。 LEFT、RIGHT函数 语法:LEFT(ARG,LENGTH)、RIGHT(ARG,LENGTH) LEFT、RIGHT函数返回ARG最左边、右边的LENGTH个字符串,ARG可以是CHAR或BINARY STRING。 CONCAT函数 语法:CONCAT(ARG1,ARG2) CONCAT函数返回两个字符串的连接。 INSERT函数 语法:INSERT(ARG1,POS,SIZE,ARG2) INSERT函数返回一个字符串,将ARG1从POS处删除SIZE个字符,将ARG2插入该位置。 LOCATE函数 语法:LOCATE(ARG1,ARG2,<POS>) LOCATE函数在ARG2中查找ARG1第一次出现的位置,如果指定POS,则从ARG2的POS处开始查找ARG1第一次出现的位置。 POSSTR函数 语法:POSSTR(EXP1,EXP2) POSSTR函数返回EXP2在EXP1中的位置。 REPEAT函数 语法:REPEAT(ARG1,NUM_TIMES) REPEAT函数返回ARG1被重复NUM_TIMES次的字符串。 REPLACE函数 语法:REPLACE(EXP1,EXP2,EXP3) REPLACE函数用EXP3代替EXP1中所有的EXP2。 SPACE函数 语法:SPACE(SIZE) SPACE函数返回一个包含SIZE个空格的字符串。 SUBSTR函数 语法:SUBSTR(ARG1,POS,<LENGTH>) SUBSTR函数返回ARG1中POS位置开始的LENGTH个字符,如果没有指定LENGTH,则返回剩余的字符。


二:类型转换函数

DB2为每种数据类型都提供了相应的函数,一般情况下它们之间的相互转换是非常简单的,请看下表:

  1. 函数  功能描述  
  2. SMALLINT    返回 SMALLINT 类型的值  
  3. INTEGER 返回 INTEGER 类型的值  
  4. BIGINT  返回 BIGINT 类型的值  
  5. DECIMAL 返回 DECIMAL 类型的值  
  6. REAL    返回 REAL 类型的值  
  7. DOUBLE  返回 DOUBLE 类型的值  
  8. FLOAT   返回 FLOAT 类型的值  
  9. CHAR    返回 CHARACTER 类型的值  
  10. VARCHAR 返回 VARCHAR 类型的值  
  11. VARCHAR_FORMAT_BIT  将位字符序列格式化为 VARCHAR 类型返回  
  12. VARCHAR_BIT_FORMAT  将格式化后位字符序列返回到格式化前  
  13. LONG_VARCHAR    返回 LONG VARCHAR 类型的值  
  14. CLOB    返回 CLOB 类型的值  
  15. GRAPHIC 返回 GRAPHIC 类型的值  
  16. VARGRAPHIC  返回 VARGRAPHIC 类型的值  
  17. LONG_VARGRAPHIC 返回 LONG VARGRAPHIC 类型的值  
  18. DBCLOB  返回 DBCLOB 类型的值  
  19. BLOB    返回 BLOB 类型的值  
  20. DATE    返回 DATE 类型的值  
  21. TIME    返回 TIME 类型的值  
  22. TIMESTAMP   返回 TIMESTAMP 类型的值  
 

三:数学函数

  1. 函数  功能描述  
  2. ABS,ABSVAL  返回参数的绝对值  
  3. SIGN    如果参数大于0则返回1,小于0返回-1,等于0返回0  
  4. RAND    返回0和1之间的随机浮点数  
  5. MOD 求余数  
  6. ROUND   返回参数1小数点右边的第参数2位置处开始的四舍五入值  
  7. TRUNCATE OR TRUNC   从表达式小数点右边的位置开始截断并返回该数值  
  8. FLOOR   返回小于或等于参数的最大整数  
  9. CEILING OR CEIL 返回大于或等于参数的最小的整数值  
  10. POWER   返回参数1的参数2次幂  
  11. SQRT    返回该参数的平方根  
  12. DIGITS  返回参数绝对值的字符串表示  
  13. MULTIPLY_ALT    返回参数的乘积  
  14. DEGREES 求角度  
  15. RADIANS 将度转换为弧度  
  16. SIN 正弦函数  
  17. SINH    双曲线正弦函数  
  18. ASIN    反正弦函数  
  19. COS 余弦函数  
  20. COSH    双曲线余弦函数  
  21. ACOS    反余弦函数  
  22. TAN 正切函数  
  23. TANH    双曲线正切函数  
  24. ATAN    反正切函数  
  25. ATANH   双曲线反正切函数  
  26. ATAN2   反正切函数  
  27. COT 余切函数  
  28. LN  返回参数的自然对数  
  29. LOG 返回参数的自然对数  
  30. LOG10   返回基于10的自然对数  
  31. EXP 返回参数的指数函数  
 

四:字符串函数
  1. 函数  功能描述  
  2. ASCII   将字符转化为ASCII码  
  3. CHR 将ASCII码转化为字符  
  4. STRIP   删除字符串开始和结尾的空白字符或其他指定的字符  
  5. TRIM    删除字符串开始和结尾的空白字符或其他指定的字符  
  6. LTRIM   删除字符串开始的空白字符  
  7. RTRIM   删除字符串尾部的空白字符  
  8. LCASE or LOWER  返回字符串的小写  
  9. UCASE OR UPPER  返回字符串的大写  
  10. SUBSTR  返回子串  
  11. SUBSTRING   返回子串  
  12. LEFT    返回开始的N个字符  
  13. RIGHT   返回结尾的N个字符  
  14. POSITION    返回参数2在参数1中的第一次出现的位置  
  15. POSSTR  返回参数2在参数1中的第一次出现的位置  
  16. LOCATE  返回参数2在参数1中的第一次出现的位置  
  17. SPACE   返回由参数指定的长度,包含空格在内的字符串  
  18. REPEAT  回参数1重复参数2次后的字符串  
  19. CONCAT  连接两个字符串  
  20. INSERT  向指定字符串添加字符串  
  21. REPLACE 替换字符串  
  22. TRANSLATE   将字符串中的一个或多个字符替换为其他字符  
  23. CHARACTER_LENGTH    返回字符串的长度  
  24. OCTET_LENGTH    返回字符串的字节数  
  25. ENCRYPT 对字符串加密  
  26. DECRYPT_BIN and DECRYPT_CHARs   对加密后的数据解密  
  27. GETHINT 返回密码提示  
  28. GENERATE_UNIQUE 生成唯一字符序列  
五:日期时间函数
  1. 函数  功能描述  
  2. YEAR    返回日期的年部分  
  3. MONTH   返回日期的月部分  
  4. DAY 返回日期的日部分  
  5. HOUR    返回日期的小时部分  
  6. MINUTE  返回日期的分钟部分  
  7. SECOND  返回日期的秒部分  
  8. MICROSECOND 返回日期的微秒部分  
  9. MONTHNAME   返回日期的月份名称  
  10. DAYNAME 返回日期的星期名称  
  11. QUARTER 返回指定日期是第几季度  
  12. WEEK    返回当前日期是一年的第几周,每周从星期日开始  
  13. WEEK_ISO    返回当前日期是一年的第几周,每周从星期一开始  
  14. DAYOFWEEK   返回当前日期是一周的第几天,星期日是1  
  15. DAYOFWEEK_ISO   返回当前日期是一周的第几天,星期一是1  
  16. DAYOFYEAR   返回当前日期是一年的第几天  
  17. DAYS    返回用整数表示的时间,用来求时间间隔  
  18. JULIAN_DAY  返回从January 1, 4712 B.C(Julian date calendar)到指定日期的天数  
  19. MIDNIGHT_SECONDS    返回午夜到指定时间的秒数  
  20. TIMESTAMPDIFF   返回两个timestamp型日期的时间间隔  
  21. TIMESTAMP_ISO   返回timestamp类型的日期  
  22. TO_CHAR 返回日期的字符串表示  
  23. VARCHAR_FORMAT  将日期格式化为字符串  
  24. TO_DATE 将字符串转化为日期  
  25. TIMESTAMP_FORMAT    将字符串格式化为日期  
六:XML 函数

DB2SQL函数中使用XML

七:分区函数
  1. 函数  功能描述  
  2. DATAPARTITIONNUM    返回数据分区中的序列号  
  3. DBPARTITIONNUM  返回行的分区号  
  4. HASHEDVALUE 返回行的 distribution map index (0 to 4095)  

八:安全函数
  1. 函数  功能描述  
  2. SECLABEL    返回未命名的安全标签  
  3. SECLABEL_BY_NAME    返回具体的安全标签  
  4. SECLABEL_TO_CHAR    返回标签的所有元素  

九:其他
  1. 函数  功能描述  
  2. COALESCE    将null转化为其他值  
  3. VALUE   将null转化为其他值  
  4. NULLIF  如果两个参数相等,则返回null,否则,返回第一个参数  
  5. HEX 返回一个值的16进制表示  
  6. LENGTH  返回一个值的长度  
  7. TABLE_NAME  返回table名  
  8. TABLE_SCHEMA    返回schema名  
  9. TYPE_ID 返回数据类型表示  
  10. TYPE_NAME   返回数据类型名  
  11. TYPE_SCHEMA 返回schema名  
  12. DEREF   返回参数类型的实例  
  13. IDENTITY_VAL_LOCAL  返回最后分配给标识列的值  
  14. REC2XML 返回XML标记格式的字符串,包含列名和列数据  
  15. EVENT_MON_STATE 返回某事件监视器的操作状态  
  16. RAISE_ERROR 抛出错误,可以指定sqlstate和error_message,有点像java的抛出异常  
原创粉丝点击