ORACLE常用数值函数、转换函数、字符串函数介绍
### ORACLE常用数值函数、转换函数、字符串函数详细介绍 #### 数值函数 1. **ABS(M)** - **功能**: 返回数值M的绝对值。 - **示例**: 如果输入`-123`, 函数返回`123`。 2. **MOD(M, N)** - **功能**: 返回M被N除后的余数。 - **示例**: `MOD(10, 3)` 返回`1`。 3. **POWER(M, N)** - **功能**: 返回M的N次幂。 - **示例**: `POWER(2, 3)` 返回`8`。 4. **ROUND(M[, N])** - **功能**: 返回M四舍五入至小数点后N位的值(如果N缺省,则默认为0)。 - **示例**: `ROUND(123.456, 2)` 返回`123.46`。 5. **TRUNC(M[, N])** - **功能**: 返回M截断至小数点后N位的值(如果N缺省,则默认为0)。 - **示例**: `TRUNC(123.456, 2)` 返回`123.45`。 #### 字符串函数 1. **INITCAP(ST)** - **功能**: 将字符串ST中的每个单词的首字母转换为大写,其余字母转换为小写。 - **示例**: `INITCAP('john doe')` 返回`John Doe`。 2. **LOWER(ST)** - **功能**: 将字符串ST中的所有字符转换为小写。 - **示例**: `LOWER('JOHN DOE')` 返回`john doe`。 3. **UPPER(ST)** - **功能**: 将字符串ST中的所有字符转换为大写。 - **示例**: `UPPER('john doe')` 返回`JOHN DOE`。 4. **CONCAT(ST1, ST2)** 或 `ST1 || ST2` - **功能**: 将字符串ST2连接到ST1的末尾。 - **示例**: `CONCAT('Hello', ' World')` 或 `'Hello' || ' World'` 返回`Hello World`。 5. **LPAD(ST1, N[, ST2])** - **功能**: 在字符串ST1左侧用ST2填充(默认为空格),使得总长度为N。 - **示例**: `LPAD('abc', 6)` 返回`' abc '`;`LPAD('abc', 6, '-')` 返回`'-abc--'`。 6. **RPAD(ST1, N[, ST2])** - **功能**: 在字符串ST1右侧用ST2填充(默认为空格),使得总长度为N。 - **示例**: `RPAD('abc', 6)` 返回`'abc '`;`RPAD('abc', 6, '-')` 返回`'abc--'`。 7. **LTRIM(ST[, SET])** - **功能**: 从字符串ST的左侧删除SET中包含的字符,默认为空格。 - **示例**: `LTRIM(' Hello ', ' ')` 返回`'Hello '`。 8. **RTRIM(ST[, SET])** - **功能**: 从字符串ST的右侧删除SET中包含的字符,默认为空格。 - **示例**: `RTRIM(' Hello ', ' ')` 返回`' Hello'`。 9. **REPLACE(ST, SEARCH_ST[, REPLACE_ST])** - **功能**: 将ST中的SEARCH_ST替换为REPLACE_ST。如果REPLACE_ST缺省,则移除SEARCH_ST。 - **示例**: `REPLACE('Hello World', 'World', 'Universe')` 返回`'Hello Universe'`。 10. **SUBSTR(ST, M[, N])** - **功能**: 从字符串ST的M位置开始,返回N个字符的子串(如果N缺省,则返回到字符串的末尾)。 - **示例**: `SUBSTR('Hello World', 7)` 返回`'World'`。 11. **LENGTH(ST)** - **功能**: 返回字符串ST的字符数量。 - **示例**: `LENGTH('Hello')` 返回`5`。 12. **INSTR(ST1, ST2[, M[, N]])** - **功能**: 返回ST2在ST1中从第M个字符开始的第N次出现的位置(M和N缺省值均为1)。 - **示例**: `INSTR('Hello World', 'o', 1, 2)` 返回`8`。 #### 转换函数 1. **NVL(M, N)** - **功能**: 如果M值为NULL,则返回N;否则返回M。 - **示例**: `NVL(NULL, 'Not Available')` 返回`'Not Available'`。 2. **TO_CHAR(M[, FMT])** - **功能**: 将数值M转换为字符串,按照指定格式FMT。如果FMT缺省,则使用足够宽度来容纳所有有效数字。 - **示例**: `TO_CHAR(123456.789, 'L999G999D99')` 返回`123,456.789`。 3. **TO_NUMBER(ST[, FMT])** - **功能**: 将字符串ST转换为数值,按照指定格式FMT。如果FMT缺省,则数值格式串的大小正好为整个数值。 - **示例**: `TO_NUMBER('123456.789')` 返回`123456.789`。 ### 示例 1. **INITCAP 和 LOWER/UPPER 的使用** - `SELECT INITCAP('john doe') FROM test;` - `SELECT LOWER('JOHN DOE') FROM test;` - `SELECT UPPER('john doe') FROM test;` 2. **CONCAT 和 || - `SELECT CONCAT('abc', 'def') "First" FROM test;` - `SELECT 'abc' || 'def' "First" FROM test;` 3. **LPAD 和 RPAD** - `SELECT LPAD(name, 10), RPAD(name, 5, '*') FROM test;` 4. **LTRIM 和 RTRIM** - `SELECT RTRIM(address, '.strd') FROM test;` 5. **REPLACE** - `SELECT name, REPLACE(name, 'a', '*') FROM test;` 6. **SUBSTR** - `SELECT SUBSTR('archibaldbearisol', 6, 9) a, SUBSTR('archibald bearisol', 11) b FROM test;` 7. **INSTR** - `SELECT name, INSTR(name, '') a, INSTR(name, '', 1, 2) b FROM test;` 8. **TO_NUMBER 和 TO_CHAR** - `SELECT TO_NUMBER('123.45') + TO_NUMBER('234.56') FROM test;` 通过上述介绍和示例,我们可以看到Oracle提供的这些内置函数极大地增强了SQL查询的能力,并使得处理复杂的数据变得更加简单和高效。这些函数不仅限于数值和字符串操作,还包括日期处理、条件判断等多种功能,极大地丰富了数据库应用的灵活性。
- 粉丝: 57
- 资源: 196
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- x64dbg-development-2022-09-07-14-52.zip
- 多彩吉安红色旅游网站-JAVA-基于springBoot多彩吉安红色旅游网站的设计与实现
- 本 repo 包含使用新 cv2 接口的 OpenCV-Python 库教程.zip
- 更新框架 (TUF) 的 Python 参考实现.zip
- Qos,GCC,pacing,Nack
- 章节1:Python入门视频
- 无需样板的 Python 类.zip
- ESP32 : 32-bit MCU & 2.4 GHz Wi-Fi & BT/BLE SoCs
- 博物馆文博资源库-JAVA-基于springBoot博物馆文博资源库系统设计与实现
- 旅游网站-JAVA-springboot+vue的桂林旅游网站系统设计与实现