### DB2系统函数详解 #### 一、统计与数学函数 **1. AVG()** - **功能**: 返回一组数值的平均值。 - **示例**: `SELECT AVG(SALARY) FROM BSEMPMS;` - **说明**: 此函数用于计算特定列(本例为`SALARY`)所有非空值的算术平均值。 **2. CORR(), CORRELATION()** - **功能**: 计算两组数值之间的相关系数。 - **示例**: `SELECT CORRELATION(SALARY, BONUS) FROM BSEMPMS;` - **说明**: 相关系数衡量的是两个变量之间的线性关系强度和方向。值范围通常在-1到+1之间。 **3. COUNT()** - **功能**: 统计表中行或值的数量。 - **示例**: `SELECT COUNT(*) FROM BSEMPMS;` - **说明**: 当使用星号`*`时,此函数将返回表中所有行的数量。如果后面跟了具体的列名,则只计算该列非空值的数量。 **4. COVAR(), COVARIANCE()** - **功能**: 计算两组数值的协方差。 - **示例**: `SELECT COVAR(SALARY, BONUS) FROM BSEMPMS;` - **说明**: 协方差是衡量两个变量如何共同变化的指标。正值表示两个变量正向变动;负值则相反。 **5. MAX()** - **功能**: 返回一组数值中的最大值。 - **示例**: `SELECT MAX(SALARY) FROM BSEMPMS;` - **说明**: 此函数用于查找特定列(如`SALARY`)的最大值。 **6. MIN()** - **功能**: 返回一组数值中的最小值。 - **示例**: `SELECT MIN(SALARY) FROM BSEMPMS;` - **说明**: 与`MAX()`相对,`MIN()`用于找出特定列中的最小值。 **7. STDDEV()** - **功能**: 计算一组数值的标准偏差。 - **示例**: `SELECT STDDEV(SALARY) FROM BSEMPMS;` - **说明**: 标准偏差是一种测量数据分散程度的方法。它显示数据值相对于其平均值的分布情况。 **8. SUM()** - **功能**: 计算一组数据的总和。 - **示例**: `SELECT SUM(SALARY) FROM BSEMPMS;` - **说明**: 此函数可以用来计算某一列(如`SALARY`)所有非空值的总和。 **9. VAR(), VARIANCE()** - **功能**: 计算一组数值的方差。 - **示例**: `SELECT VARIANCE(SALARY) FROM BSEMPMS;` - **说明**: 方差是测量数据分散程度的另一种方法,它是每个数值与平均值之差的平方的平均数。 **10. ABS(), ABSVAL()** - **功能**: 返回参数的绝对值。 - **示例**: `SELECT ABS(-3.4) FROM BSEMPMS;` - **说明**: 绝对值是指任何数的非负值,不考虑其符号。 #### 二、三角函数与转换函数 **11. ACOS()** - **功能**: 返回参数的反余弦值。 - **示例**: `SELECT ACOS(0.9) FROM BSEMPMS;` - **说明**: 反余弦函数是余弦函数的逆函数,返回值范围为0到π。 **12. ASCII()** - **功能**: 返回整数参数最左边的字符的ASCII码。 - **示例**: `SELECT ASCII('R') FROM BSEMPMS;` - **说明**: ASCII码是一种标准的字符编码方案,可以将字符映射为整数。 **13. ASIN()** - **功能**: 返回参数的反正弦值。 - **示例**: `SELECT ASIN(0.9) FROM BSEMPMS;` - **说明**: 反正弦函数是正弦函数的逆函数,返回值范围为-π/2到π/2。 **14. ATAN()** - **功能**: 返回参数的反正切值。 - **示例**: `SELECT ATAN(0.9) FROM BSEMPMS;` - **说明**: 反正切函数是正切函数的逆函数,返回值范围为-π/2到π/2。 **15. ATAN2()** - **功能**: 返回用弧度表示的角度的X和Y坐标的反正切值。 - **示例**: `SELECT ATAN2(0.5, 0.9) FROM BSEMPMS;` - **说明**: 此函数用于计算平面直角坐标系中,从原点到点(X, Y)的直线与正x轴之间的角度。 **16. BIGINT()** - **功能**: 将输入转换为64位整数表示。 - **示例**: `SELECT BIGINT(EMP_NO) FROM BSEMPMS;` - **说明**: 该函数可以将输入的数据类型转换为64位整数。 **17. CEILING() OR CEIL()** - **功能**: 返回比参数大或等于参数的最小的整数值。 - **示例**: - `SELECT CEILING(3.56) FROM BSEMPMS;` - `SELECT CEIL(4.67) FROM BSEMPMS;` - **说明**: 这两个函数均用于取比参数大的最近整数。 **18. CHAR()** - **功能**: 返回日期时间型, 字符串, 整数, 十进制或双精度浮点数的字符串表示。 - **示例**: `SELECT CHAR(SALARY, ',') FROM BSEMPMS;` - **说明**: 此函数可以将不同数据类型的值转换为字符串形式。 **19. CHR()** - **功能**: 返回具有由参数指定的ASCII码的字符。 - **示例**: `SELECT CHR(167) FROM BSEMPMS;` - **说明**: 输入ASCII码,输出对应的字符。 **20. CONCAT()** - **功能**: 返回两个字符串的连接。 - **示例**: `SELECT CONCAT(EMP_NO, EMP_NAM) FROM BSEMPMS;` - **说明**: 此函数用于将两个或多个字符串拼接成一个新的字符串。 #### 三、日期与时间函数 **21. YEAR()** - **功能**: 返回数值的年部分。 - **示例**: `SELECT YEAR('2003/01/02') FROM BSEMPMS;` - **说明**: 提取日期中的年份部分。 **22. VARCHAR()** - **功能**: 返回字符串, 日期型, 图形串的可变长度的字符串表示。 - **示例**: `SELECT VARCHAR(EMP_NAM, 50) FROM BSEMPMS;` - **说明**: 用于指定字符串的长度,使得输出的字符串具有固定的长度。 **23. UCASE() OR UPPER()** - **功能**: 返回字符串的大写。 - **示例**: - `SELECT UCASE(EMP_NAM) FROM BSEMPMS;` - `SELECT UPPER(EMP_NO) FROM BSEMPMS;` - **说明**: 将输入的字符串全部转换为大写字母。 **24. TRUNCATE() OR TRUNC()** - **功能**: 从表达式小数点右边的位置开始截断并返回该数值。 - **示例**: `SELECT TRUNCATE(345.6789, 2) FROM BSEMPMS;` - **说明**: 截断数值至指定的小数位数,并不进行四舍五入操作。 **25. TIME()** - **功能**: 返回一个数值中的时间。 - **示例**: `SELECT TIME('2001-03-19.12.30.123456') FROM BSEMPMS;` - **说明**: 从给定的时间戳中提取时间部分。 **26. SUBSTR()** - **功能**: 返回字符串自指定位置开始的子串。 - **示例**: - `SELECT SUBSTR('CDNJFDJFJD', 5) FROM BSEMPMS;` - `SELECT SUBSTR('CDNJFDJFJD', 5, 2) FROM BSEMPMS;` - **说明**: 第一个示例是从第5个字符开始取剩余的所有字符;第二个示例是从第5个字符开始取2个字符。 **27. SQRT()** - **功能**: 返回该参数的平方根。 - **示例**: `SELECT SQRT(36) FROM BSEMPMS;` - **说明**: 计算输入数值的平方根。 **28. SPACE()** - **功能**: 返回由参数指定的长度, 包含空格在内的字符串。 - **示例**: `SELECT SPACE(10) FROM BSEMPMS;` - **说明**: 输出长度为10的空格字符串。 **29. SECOND()** - **功能**: 返回一个数值的秒部分。 - **示例**: `SELECT SECOND('18:34:32') FROM BSEMPMS;` - **说明**: 从时间字符串中提取秒数。 以上是DB2系统中常用的部分函数及其使用方法,通过这些函数的应用,我们可以更加灵活地处理数据库中的数据,实现更复杂的查询需求。
- u0105872352014-12-29看过了整理的蛮全面的,很有用,谢谢
- kly4082013-04-22很详细,整理辛苦了
- 粉丝: 2
- 资源: 11
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助