共计 3355 个字符,预计需要花费 9 分钟才能阅读完成。
本篇内容主要讲解“C++ 字符函数、数字函数和日期函数的说明”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“C++ 字符函数、数字函数和日期函数的说明”吧!
一、官档
Book → SQL Language Reference → 5 Functions → Single-Row Functions
二、字符函数
大小写转换函数
UPPER
语法:UPPER(string)
说明:返回大写的 string. 不是字母的字符不变. 如果 string 是 CHAR 数据类型的, 那么结果也是 CHAR 类型的. 如果 string 是 VARCHAR2 类型的, 那么结果也是 VARCHAR2 类型的.
例子:
SELECT UPPER(AaBbCcDd) AaBbCcDd
FROM DUAL;
LOWER
语法:LOWER(string)
说明:返回小写的 string。不是字母的字符不变。
如果 string 是 CHAR 数据类型的,那么结果也是 CHAR 类型的。
如果 string 是 VARCHAR2 类型的,那么结果也是 VARCHAR2 类型的。
例子:
SELECT LOWER(AaBbCcDd) AaBbCcDd
FROM DUAL;
INITCAP
语法:INITCAP(string)
说明:返回字符串的每个单词的第一个字母大写而单词中的其他字母小写的 string。单词是用. 空格或给字母数字字符进行分隔。不是字母的字符不变动。
例子:
SELECT INITCAP(ryan) UPP
FROM DUAL;
字符处理函数
CONCAT
语法:CONCAT(string1,string2)
说明:返回 string1,并且在后面连接 string2。
例子:
SELECT CONCAT(010- , 88888888)|| 转 23 电话
FROM DUAL;
SUBSTR
语法:SUBSTR(string,a[,b])
说明:返回从字母为值 a 开始 b 个字符长的 string 的一个子字符串. 如果 a 是 0, 那么它就被认为从第一个字符开始. 如果是正数, 返回字 符是从左边向右边进行计算的. 如果 b 是负数, 那么返回的字符是从 string 的末尾开始从右向左进行计算的. 如果 b 不存在, 那么它将缺省的设置为整个字符串. 如果 b 小于 1,那么将返回 NULL. 如果 a 或 b 使用了浮点数,那么该数值将在处理进行以前首先被却为一个整数.
例子:
SELECT SUBSTR(13088888888 ,3,8)
FROM DUAL;
LENGTH
语法:LENGTH(string)
说明:返回 string 的字节单位的长度.CHAR 数值是填充空格类型的, 如果 string 由数据类型 CHAR, 它的结尾的空格都被计算到字符串长度中间. 如果 string 是 NULL, 返回结果是 NULL, 而不是 0.
例子:
SELECT length(Ryan) FROM DUAL;
INSTR
语法:INSTR(string1, string2, [a,b])
说明:得到在 string1 中包含 string2 的位置. string1 时从左边开始检查的, 开始的位置为 a, 如果 a 是一个负数, 那么 string1 是从右边开始进行扫描的. 第 b 次出现的位置将被返回. a 和 b 都缺省设置为 1, 这将会返回在 string1 中第一次出现 string2 的位置. 如果 string2 在 a 和 b 的规定下没有找到, 那么返回 0. 位置的计算是相对于 string1 的开始位置的, 不管 a 和 b 的取值是多少.
例子:
SELECT INSTR(oracle traning , ra ,1,2) instring
FROM DUAL;
LPAD | RPAD
语法:LPAD(string1,x[,string2]),RPAD(string1,x[,string2])
说明:返回在 X 字符长度的位置上插入一个 string2 中的字符的 string1。如果 string2 的长度要比 X 字符少,就按照需要进行复制后,进行左 | 右填充。如果 string2 多于 X 字符,则仅 string1 前面的 X 各字符被使用。如果没有指定 string2,那么使用空格进行左 | 右填充。X 是使用显示长度可以比字符串的实际长度要长。
例子:
SELECT RPAD(Ryan ,10, *), LPAD(Ryan ,10, *)
FROM DUAL;
TRIM
语法:TRIM([[LEADING||TRAILING||BOTH] c2 FROM] c1)
说明:
如果没有指定任何参数则 oracle 去除 c1 头尾空格
如果指定了参数则会去掉 c1 头部 c2
如果指定了 leading 参数则会去掉 c1 头部 c2
如果指定了 trailing 参数则会去掉 c1 尾部 c2
例子:
例一:
SELECT TRIM(What is tHis)
FROM DUAL;
例二:
SELECT TRIM(W FROM What is tHis w W)
FROM DUAL;
例三:
SELECT TRIM(LEADING W FROM What is tHis w W)
FROM DUAL;
例四:
SELECT TRIM(TRAILING W FROM What is tHis w W)
FROM DUAL;
REPLACE
语法:REPLACE(string,search_str[,replace_str])
说明:把 string 中的所有的子字符串 search_str 用可选的 replace_str 替换,如果没有指定 replace_str,所有的 string 中的子字符 串 search_str 都将被删除。REPLACE 是 TRANSLATE 所提供的功能的一个子集。
例子:
SELECT REPLACE(He love you , He , I)
FROM DUAL;
三、数字函数
ROUND
语法:ROUND(x[,y])
说明:返回舍入到小数点右边 Y 位的 X 值。Y 缺省为 0,这将 X 舍入为最接近的整数。如果 Y 是负数,那么舍入到小数点左边相应的位上,Y 必须为整数。
例句:
SELECT ROUND(55.5), ROUND(-55.4)
FROM DUAL;
TRUNC
语法:TRUNC(x[,y])
说明:截取值函数,Y 缺省为 0,这样 X 被截取成一个整数。如果 Y 为负数,那么截取到小数点左边相应位置
例句:
SELECT TRUNC(124.1666,-2), TRUNC(124.16666,2)
FROM DUAL;
MOD
语法:MOD(被除数,除数)
说明:求余函数,如果除数为 0,则返回被除数。
例句:
SELECT MOD(10,3),
MOD(3,3),
MOD(2,3)
FROM DUAL;
四、日期函数
SYSDATE
语法:SYSDATE
说明:返回当前日期和时间。
例句:
SELECT SYSDATE FROM DUAL;
MONTHS_BETWEEN
语法:MONTHS_BETWEEN(f,s)
说明:返回两个日期间的 月份
例句:
SELECT MONTHS_BETWEEN(SYSDATE,TO_DATE( 2017-11-12 , YYYY-MM-DD))
FROM DUAL;
ADD_MONTHS
语法:ADD_MONTHS(d,n)
说明:返回把月份数加到日期上的新日期
例句:
SELECT ADD_MONTHS(SYSDATE,2)
FROM DUAL;
NEXT_DAY
语法:NEXT_DAY(d, day_of_week)
说明:返回由 day_of_week 命名的,在变量 d 指定的日期之后的第一个工作日的日期。参数 day_of_week 必须为该星期中的某一天。
例句:
SELECT NEXT_DAY(SYSDATE,1)
FROM DUAL;
LAST_DAY
语法:LAST_DAY(日期)
说明:本月最后一天
例句:
SELECT LAST_DAY(SYSDATE)
FROM DUAL;
ROUND
语法:ROUND(date,[fmt])
说明:按指定格式对日期进行四舍五入
例句:
SELECT ROUND(SYSDATE, YEAR)
FROM DUAL;
TRUNC
语法:TRUNC(date,[fmt])
说明:返回截取时间部分后的 DATE,如果有 fmt 部分的设置,则返回与该部分最近的日期
例句:
SELECT TRUNC(SYSDATE, YEAR)
FROM DUAL;
到此,相信大家对“C++ 字符函数、数字函数和日期函数的说明”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!