Oracle中不同类型的功能是-
Oracle字符串函数
Oracle数值函数
Oracle日期函数
有关这些功能的更多详细信息如下-
以下是Oracle字符串函数-
此函数返回提供的字符串str中第一个单词的ASCII或数字值。如果为空字符串,则返回0。例如:
SQL> SELECT ASCII('Apple'); +---------------------------------------------------------+ | ASCII('Apple') | +---------------------------------------------------------+ | 65 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
这将返回A的ASCII值,即65,因为它是字符串中的第一个字符。
该函数返回通过连接参数列表中的所有字符串形成的字符串。这些字符串可能只有两个或多个,但它们都将被连接在一起。例如:
SQL> SELECT CONCAT('Sky', 'Is', 'Beautiful'); +---------------------------------------------------------+ | CONCAT('Sky', 'Is', 'Beautiful') | +---------------------------------------------------------+ |SkyIsBeautiful | +---------------------------------------------------------+ 1 row in set (0.00 sec)
三个字符串“ Sky”,“ Is”,“ Beautiful”连接成一个字符串,即“ SkyIsBeautiful”
该函数返回字符串str的长度(以字节为单位)。例如:
SQL> SELECT LENGTH('happy'); +---------------------------------------------------------+ | LENGTH('happy') | +---------------------------------------------------------+ | 5 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
返回字符串“ happy”的长度,以字节为单位,即5。
该功能会将所有大写字符转换为小写。例如:
SQL> SELECT LOWER('BEAUTY'); +---------------------------------------------------------+ | LOWER('BEAUTY') | +---------------------------------------------------------+ | beauty | +---------------------------------------------------------+ 1 row in set (0.00 sec)
“ BEAUTY”的所有字符都转换为小写,即“ beauty”
此函数比较字符串str1和str2。如果两个字符串相等,则返回0;如果str1大于str2,则返回1;如果str2大于str1,则返回-1。例如-
SQL> SELECT STRCMP('MIKE', 'MIKE'); +---------------------------------------------------------+ | STRCMP('MIKE', 'MIKE') | +---------------------------------------------------------+ | 0 | +---------------------------------------------------------+ 1 row in set (0.00 sec)
该函数返回0,因为字符串“ MIKE”和“ MIKE”相同。
此功能将所有小写字符转换为大写。例如-
SQL> SELECT UPPER('orange'); +---------------------------------------------------------+ | UPPER('orange') | +---------------------------------------------------------+ | ORANGE | +---------------------------------------------------------+ 1 row in set (0.00 sec)
字符串“ orange”以大写形式转换为“ ORANGE”。
以下是Oracle数值函数:
此函数返回X的绝对值。例如:
SELECT ABS(-10);
返回10。
变量X除以Y并返回其余数,例如:
SELECT MOD(15,2);
返回1。
如果X为正,则返回1;如果为负,则返回-1;如果X的值为0,则返回0。例如:
SELECT SIGN(-20);
返回-1。
这将返回小于或等于X的最大整数值。例如:
SELECT FLOOR(8.3);
返回8。
这将返回大于或等于X的最小整数值。例如-
SELECT CEIL(8.3);
返回9。
此函数将X的值返回到Y的幂。例如:
SELECT POWER(3,2);
返回9。
以下是Oracle字符串函数:
此函数返回系统的当前日期和时间。它是最流行的oracle函数之一。SYSDATE()
通常与函数TO_CHAR()一起使用。例如:
TO_CHAR(SYSDATE, ‘MM-DD-YYYY HH:MM:SS’);
这将以字符串形式返回系统日期和时间。在这种情况下,它将是'08-01-2018 12:28:34'。
此函数采用两个值,即x和y,它们的单位为月。它返回x和y之间的月数。
例如:通过将MONTHS_BETWEEN()与参数SYSDATE和雇员加入的日期结合使用,可以找到雇员在公司工作的月份数。
SELECT MONTHS_BETWEEN (SYSDATE, EMP_JOIN_DATE) FROM EMP;
假设员工加入日期为2018年1月1日,系统日期为2018年8月1日。因此以上返回7。
此函数给出与d,n个月相隔的同一天。n的值可以为正或负,例如:
SELECT SYSDATE, ADD_MONTHS (SYSDATE,2) FROM DUAL;
此函数将返回系统日期和系统日期后2个月的日期,即“ 2018年8月1日”和“ 2018年10月1日”。
此函数返回函数中提供的特定月份d的月份的最后一天。例如:
SELECT SYSDATE, LAST_DAY (SYSDATE) FROM DUAL;
这将返回系统日期和该系统日期的特定月份的最后一天,即“ 2018年8月1日”和“ 2018年8月31日”。