Oracle 内置函数详解

Oracle数据库提供了丰富的内置函数,极大地方便了数据处理和查询操作。这些函数涵盖了字符串处理、数值计算、日期时间操作、数据类型转换等多个方面。

1. 字符串函数

  • CONCAT(str1, str2): 连接两个字符串。
  • LENGTH(str): 返回字符串长度。
  • LOWER(str): 将字符串转换为小写。
  • UPPER(str): 将字符串转换为大写。
  • SUBSTR(str, start, length): 截取字符串。

2. 数值函数

  • ABS(n): 返回数字的绝对值。
  • ROUND(n, decimals): 四舍五入到指定小数位数。
  • TRUNC(n, decimals): 截断到指定小数位数。
  • MOD(m, n): 返回两个数相除的余数。
  • POWER(m, n): 返回 m 的 n 次幂。

3. 日期时间函数

  • SYSDATE: 返回当前系统日期和时间。
  • ADD_MONTHS(date, months): 在指定日期上增加指定月数。
  • MONTHS_BETWEEN(date1, date2): 计算两个日期之间的月数差。
  • NEXT_DAY(date, day): 返回指定日期之后的第一个指定星期几的日期。
  • LAST_DAY(date): 返回指定日期所在月的最后一天。

4. 数据类型转换函数

  • TO_CHAR(date, format): 将日期或数字转换为指定格式的字符串。
  • TO_DATE(string, format): 将字符串转换为日期。
  • TO_NUMBER(string): 将字符串转换为数字。

5. 其他常用函数

  • NVL(expr1, expr2): 如果 expr1 为 NULL,则返回 expr2,否则返回 expr1。
  • DECODE(expr, search1, result1, search2, result2, ..., default): 根据表达式的值返回不同的结果。
  • CASE expr WHEN condition1 THEN result1 WHEN condition2 THEN result2 ELSE default END: 根据条件返回不同的结果。