Oracle数据库函数详解:字符串、时间操作与集合运算

需积分: 9 0 下载量 197 浏览量 更新于2024-09-15 收藏 49KB DOC 举报
"Oracle数据库是企业级广泛应用的关系型数据库系统,其内含丰富的函数和运算符,便于数据处理和分析。本文将详细讲解在Oracle中的一些常用函数,特别是与字符串、时间和表操作相关的功能。" 在Oracle数据库中,函数是进行数据处理的重要工具。以下是一些关键知识点: 一、表的操作 1) 创建表: `CREATE TABLE test AS SELECT * FROM dept;` 这条语句可以创建一个与`dept`表具有相同结构的新表`test`,并复制所有数据。 `CREATE TABLE test AS SELECT * FROM dept WHERE 1=2;` 这种方式仅复制表`dept`的结构,而不复制数据。 2) 插入数据: `INSERT INTO test SELECT * FROM dept;` 可以将`dept`表中的所有数据插入到`test`表中。 二、运算符 1) 算术运算符:`+`, `-`, `*`, `/` 用于执行基本的数学运算。 2) 连接运算符:`||` 用于字符串连接,如 `SELECT deptno || dname FROM dept;` 3) 比较运算符:`=`, `<>`, `<`, `>`, `<=`, `>=` 用于比较操作。 4) `LIKE`, `BETWEEN`, `IS NULL`, `IN` 是常用的比较操作符。 5) 逻辑运算符:`NOT`, `AND`, `OR` 用于组合条件表达式。 6) 集合运算符:`INTERSECT`, `UNION`, `UNION ALL`, `MINUS` 用于合并多个查询结果。使用时需要注意列数和数据类型的匹配,且`LONG`列不能包含在查询中。 三、Oracle函数 1) `SYSDATE` 返回当前系统日期。 2) `DUAL` 是一个虚拟表,通常用于测试单行单列的查询。 3) 日期函数: - `ADD_MONTHS(date, months)` 返回日期加上或减去指定月数后的日期。 - `LAST_DAY(date)` 返回指定日期所在月份的最后一天。 - `MONTHS_BETWEEN(date1, date2)` 计算两个日期之间的月份数。 - `TRUNC(date)` 截断日期至指定的精度,如年、月、日等。 举例来说,如果我们想要获取当前日期的下个月份,可以使用 `ADD_MONTHS(SYSDATE, 1)`。如果需要找到某月的最后一天,可以使用 `LAST_DAY(SYSDATE)`。 除了这些,Oracle还有许多其他函数,如字符串处理函数(如`SUBSTR`, `UPPER`, `LOWER`等)、转换函数(如`TO_CHAR`, `TO_DATE`等)、数学函数以及聚合函数(如`SUM`, `AVG`, `MAX`, `MIN`等)。了解并熟练使用这些函数能够极大地提升在Oracle数据库中的数据操作效率。