1、单行函数

大小写处理函数如下:

LOWER(column|expression)    转换字符值为小写

UPPER(column|expression)    转换字符值为大写

INITCAP(column|expression)   转换每个单词的首字母值为大写,其它值为小写

示例:

函数结果

LOWER('SQLCourse')       sqlcourse

UPPER('SQLCourse')        SQL COURSE

INITCAP('SQLCourse')      SqlCourse

字符处理函数如下:

CONCAT(column1|expression1,column2|expression2)

连接第一个字符值到第二个字符值;等价于连接运算符(||)

SUBSTR(column|expression,m[,n])

从字符值中返回指定的字符,开始位置在m,n字符长度(如果m是负数,计数从字符值末尾开始;如果n被忽略,返回到串结束的所有字符)。

LENGTH(column|expression)

返回表达式中的字符数

INSTR(column|expression,‘string’, [,m], [n])

   返回一个命名串的数字位置。随意地,你可以提供一个位置m作为查找的开始,在字符串中第n次发现的位置。m和n的默认值是1,意味着在起始开始查找,并且报告第一个发现的位置。

LPAD(column|expression,n,'string')

RPAD(column|expression,n,'string')

填充字符值左、右调节到n字符位置的总宽度

TRIM(leading|trailing|both,trim_characterFROMtrim_source)

使你能够从一个字符串修整头或尾字符(或两者)。如果trim_character或trim_source是字符文字,你必须放在单引号中。

示例:

函  数                            结  果

CONCAT('Hello','World')           HelloWorld

SUBSTR('HelloWorld',1,5)         Hello

LENGTH('HelloWorld')               10

INSTR('HelloWorld','W')            6

LPAD(salary,10,'*')                    *****24000

RPAD(salary,10, '*')                   24000 *****

TRIM('H'FROM 'HelloWorld')    elloWorld

REPLACE(text,search_string,replacement_string)

从字符串查找一个文本表达式,如果找到,用指定的值串代替它

ROUND(column|expression, n)

四舍五入列、表达式或值为n位小数位,或者,如果n被忽略,无小数位。(如果n是负值,小数点左边的数被四舍五入)

TRUNC(column|expression,n)

截断列、表达式或值到n位小数,或者,如果n被忽略,那么n默认为0

MOD(m,n)   返回m除以n的余数 注:MOD函数经常用于确定一个值是奇数还是偶数

ROUND:四舍五入指定小数的值

ROUND(45.926,2)            45.93

TRUNC(45.926,2)             45.92

MOD(1600,300)                100

日期函数:

Oracle数据库用内部数字格式存储日期:世纪,年,月,日,小时,分钟和秒,默认日期显示格式是DD-MON-RR

SYSDATE是一个日期函数,它返回当前数据库服务器的日期和时间。

从日期加或者减一个数,结果是一个日期值

两个日期相减,得到两个日期之间的天数

用小时数除以24,可以加小时到日期上

既然数据库以数字方式存储日期,你就可以用算术运算符进行计算,例如,加或减。你可以加或减数字常数以及日期。

你可以进行下面的运算:

运算                        结果           说明

date+ number      日期     加一个天数到一个日期上

date- number       日期     从一个日期上减一个天数

date- date       天数     用一个日期减另一个日期

date+ number/24   日期     加一个小时数到一个日期上

函  数                               说   明

MONTHS_BETWEEN         两个日期之间的月数

ADD_MONTHS                   加日历月到日期

NEXT_DAY                        下个星期几是几号

LAST_DAY                         指定月的最后一天

ROUND                               四舍五入日期

TRUNC                                截断日期

MONTHS_BETWEEN(date1,date2):计算date1和date2之间的月数,其结果可以是正的也可以是负的。如果date1大于date2,结果是正的,反之,结果是负的。结果的小数部分表示月的一部分。

ADD_MONTHS(date, n):添加n个日历月到date。n的值必须是整数,但可以是负的。

NEXT_DAY(date,‘char’):计算在date之后的下一个周(‘char’)指定天的日期。char的值可能是一个表示一天的数或者是一个字符串。

LAST_DAY(date):计算包含date的月的最后一天的日期

ROUND(date[,‘fmt’]):返回用格式化模式fmt四舍五入到指定单位的date,如果格式模式fmt被忽略,date被四舍五入到最近的天。

TRUNC(date[,‘fmt’]):返回用格式化模式fmt截断到指定单位的带天的时间部分的date,如果格式模式fmt被忽略,date被截断到最近的天。

MONTHS_BETWEEN(‘01-SEP-95’,‘11-JAN-94’)  19.6774194

ADD_MONTHS(‘11-JAN-94’,6)'11-JUL-94'

NEXT_DAY(‘01-SEP-95’,‘2’)下个星期五是几号        '08-SEP-95'

LAST_DAY('01-FEB-95')'28-FEB-95'

假定SYSDATE = '25-JUL-95':

ROUND(SYSDATE,'MONTH')     01-AUG-95

ROUND(SYSDATE,'YEAR')        01-JAN-96

TRUNC(SYSDATE,'MONTH')     01-JUL-95

TRUNC(SYSDATE,'YEAR')        01-JAN-95

TRUNC(TO_DATE('25-JUL-95'),'YEAR')                                         01-JAN-95

TO_CHAR(number|date,[fmt],[nlsparams])

指定返回的月和日名字及其缩写的语言。如果忽略该参数,该函数在会话中使用默认日期语言。

TO_NUMBER(char,[fmt],[nlsparams])

用由可选格式化样式fmt指定的格式转换包含数字的字符串为一个数字。Nlsparams参数在该函数中的目的与TO_CHAR函数用于数字转换的目的相同。

TO_DATE(char,[fmt],[nlsparams])

按照fmt指定的格式转换表示日期的字符串为日期值。如果忽略fmt,格式是DD-MON-YY。Nlsparams参数的目的与TO_CHAR函数用于日期转换时的目的相同。

日期格式模板的元素

YYYY         数字全写年

YEAR         年的拼写

MM            月的两数字值

MONTH     月的全名

DY             周中天的三字母缩写

DAY          周中天的全名

MON         月的三字母缩写

DD            月的数字天

NVL(expr1, expr2)

NVL2(expr1, expr2, expr3)

NULLIF(expr1, expr2)

COALESCE(expr1, expr2, ..., exprn)

NVL    转换空值为一个实际值

NVL2  如果expr1非空,NVL2返回expr2;如果expr1为空,NVL2返回expr3。参数expr1可以是任意数据类型

NULLIF 比较两个表达式,如果相等返回空;如果不相等,返回第一个表达式

COALESCE 返回表达式列表中的第一个非空表达式

COALESCE函数返回列表中的第一个非空表达式。

语法

COALESCE(expr1,expr2,...exprn)

在语法中:

expr1如果它非空,返回该表达式

expr2如果第一个表达式为空并且该表达式非空,返回该表达式

exprn如果前面的表达式都为空,返回该表达式

select coalesce(‘ ',‘ ','bca') from dual;

2、组函数

每个函数接收一个参数,下面的表确定你可以在语法中使用的选项:

函   数                                           说        明

AVG([DISTINCT|ALL]n)      n的平均值,忽略空值

COUNT({*|[DISTINCT|ALL]expr}) 用 * 计数所有行,包括重复和带空值的行。expr求除了空计算

MAX([DISTINCT|ALL]expr)     expr的最大值,忽略空值

MIN([DISTINCT|ALL]expr)     expr的最小值,忽略空值

STDDEV([DISTINCT|ALL]x)     x的标准差,忽略空值

SUM([DISTINCT|ALL]n)     合计n 的值,忽略空值

VARIANCE([DISTINCT|ALL]x)     x的方差,忽略空值

DISTINCT使得函数只考虑不重复的值;ALL 使得函数考虑每个值,包括重复值。默认值是 ALL ,因此不需要指定。

用于函数的参数的数据类型可以是CHAR、VARCHAR2、NUMBER 或 DATE。

所有组函数忽略空值。为了用一个值代替空值,用NVL、NVL2 或 COALESCE 函数。

oracle数据库常用函数相关推荐

  1. Oracle数据库常用函数总结

    我本楚狂人,凤歌笑孔丘 ------唐·李白<庐山谣寄卢侍御虚舟> Oracle数据库常用函数总结 一.字符串函数 二.数值函数 三.时间函数 一.字符串函数 显示员工姓名,其中首字母大写 ...

  2. oracle数据库函数mod,oracle数据库常用函数

    1.看当前数据库的名字 select name from v$database 2.查看当前数据库实例名 select instance_name from v$instance show param ...

  3. oracle数据库数值函数,五、oracle数据库常用函数

    查看当前数据库的名字 select name from v$database 2.查看当前数据库实例名 select instance_name from v$instance show parame ...

  4. 【干货】Oracle数据库常用十一大操作指令

    相关文章导读 收藏 | 超详细的Oracle19c安装步骤_XMWS-IT-CSDN博客 DBA数据库管理必备认证:ORACLE OCP 19C 教材下载 Oracle数据库常用十一大操作指令 1. ...

  5. oracle中各种函数,oracle中常用函数大全

    1.数值型常用函数 函数 返回值 样例 显示 ceil(n) 大于或等于数值n的最小整数 select ceil(10.6) from dual; 11 floor(n) 小于等于数值n的最大整数 s ...

  6. 1 Oracle数据库常用命令

    linux下重启oracle服务步骤 1.使用Xshell连接linux服务器. 2.以oracle身份登录数据库,命令:su – oracle 3.进入Sqlplus控制台,命令:sqlplus / ...

  7. Oracle数据库常用基本SQL语法

    标题 Oracle数据库常用基本SQL语法 1.表的创建.插入,删除及Oracle和mysql的数据类型的区别 create table item (item_id number(5) primary ...

  8. PHP访问mysql的常用函数,PHP操作MySQL数据库常用函数

    PHP操作MySQL数据库常用函数 php操作mysql数据库,俗称天龙八步: 第一步:连接数据库 第二步:判断连接错误 第三步:选择数据库 第四步:设置字符集 第五步:准备SQL语句 第六步:执行并 ...

  9. Oracle 数据库常用操作语句大全

    原文:Oracle 数据库常用操作语句大全 一.Oracle数据库操作 1.创建数据库      create database databasename 2.删除数据库      drop data ...

最新文章

  1. android animatorset 监听,Android源码分析--动画框架AnimatorSet
  2. 三种方法绘制雷达图,用最快的时间做出最好看的可视化图表
  3. command对象的获取 c#
  4. jinfo命令 Java Configuration Info
  5. JS使用技巧2——momentjs太重了吗?试试dayjs和miment吧
  6. QSerialport多线程方法
  7. pandas DataFrame数据转为list
  8. 分析arm Internal error: synchronous external abort: 96000010 [#1] PREEMPT SMP
  9. 仿人机器人的跑步研究学习笔记2之什么是正逆运动学
  10. 功能结构图、信息结构图、结构图的区别
  11. java ssh框架搭建_SSH框架基础搭建
  12. java 以10为底的对数_log以10为底0.5的对数怎么算
  13. oracle 返回部分行,求救,返回部分结果后,才报单行子查询返回多行。
  14. eas表单分录带出自定义核算项目
  15. 【转】win10更改C盘中用户文件夹名
  16. 用当下的力量共创未来——2017(第十五届)中国互联网经济论坛盛典
  17. java中pl是什么意思,英语中pl是什么意思
  18. 我看好金融IT业的几个理由
  19. 利用windows上的VMware安装CentOS7(上)
  20. Cocos Creator 3D 插件教程(一):看你骨骼惊奇,我带你上车!

热门文章

  1. c# 收取邮件 解析_使用c#+IMap实现收取163邮件
  2. Ubuntu18.04无法输入中文
  3. ucml生成java_ucml选项卡
  4. mongo 查询显示字段_MongoDB查询指定字段(field)返回指定字段的方法
  5. WinAPI: GetTempPath - 获取临时文件夹路径
  6. 红黑树分析与JDK8中HashMap源码解析
  7. 两天签约148个项目,投资总额超900亿,这个领域,马上要有大动作!
  8. python最佳身高_KNN分类算法原理与Python+sklearn实现根据身高和体重对体型分类
  9. 《基于Easydl的虎狮检测》计算机新技术讲座 课程设计
  10. java 第八周的选做题