单行函数分为五种类型:字符函数、数值函数、日期函数、转换函数、通用函数。

1.字符函数:

  对于输入的字符转换为需要转为的字符或数值。

  upper()大写

--小写字母转为大写字母

  

  --对于表指定的字符转大写

  

  --对于指定列字符转大写

  

  lower() 大写字母转小写

  --大写字母转小写

  

  --对指定的值转小写

  

  

  INITCAP()

  第一个字母转为大写

  

  --表一列首字母转为大写

  

  concat() 和  ||

  拼接字符串

  --将两个字符拼接起来

  --使用concat()

  

  --使用  ||

   

  ---拼接实例

  select 列  ||  列  from employees;

  select concat(列,列)   from employees;

  

  substr()  字符串截取

  用法:substr(字符串,第几位开始截取,截取的长度)。

  在Oracle数据库中substr的截取的开始点在第0位和第1位都是一样的效果。在实际应用程序开发中需要注意。

  ---从第一位字符开始截取两位字符

  

  ---例:截取英文名的三位,正序截取和倒序截取,倒序使用负号 -

    从前往后截取

  

    从后往前截取

  

  

  length()  字符串长度

  --计算字符串长度

  

  replace() 替换

  用法:replace(原字符,要替换的原字符或单个字符,替换后的字符)

  --把指定的字符替换

  

2.数值函数

  round() 四舍五入

  用法:round(数值,截取长度)

  --默认在小数第一位四舍五入

  

  --四舍五入到截取小数点后三位小数

  

  --整数位四舍五入,指定截取位置的参数为负数

  

  trunc() 截断小数

  用法:trunc(数值,截取长度)

  截取掉小数位,不进行四舍五入过程。

  --截取的小数之后的位置

  

  --指定截取长度,但不会四舍五入

  

  ---截取的位数是负数

  

  

  mod()  取余

  用法:mod(除数,被除数)

  

3.日期函数

  sysdate  查询当前日期

  

  

  日期-数字=日期

  日期+数字=日期

  日期-日期=数字(天数)

  --求入职天数   

   

    可以使用trunc截断小数取整

   

  last_date( )  本月的最后的一天

  

  add_months( )

  语法:add_months(日期字段,数值)

  数值是查询从当天日期开始,查询前几个月的今天用负数,查询后几个月的用正数。

  

  

  ---查询表入职日期加俩月

  

  months_between( )

  语法:months_between( 对比的日期,指定日期),

   指定的日期小于对比的日期查询结果为正数,反之为负数。

  查询对比日期与指定日期相差月数

  

  --查询s_date入职日期到2020年相差几个月

  

  next_day( )

   语法:next_day(指定日期,指定日期下周的第一天)

    

    

    

    current_date

      返回当前查询窗口的日期

     

    current_timestamp()

    返回的日期和时间是根据时区转换过的日期

    

    拓展:

        使用current_timestamp时候,在数据发生变化时,字段将会更新为系统时间

        

    dbtimezone

    返回时区

      

    extract()

      查找日期字段值

      

    localtimestamp

     返回会话中的日期

    

     Y或YY或YYY或YYYY,  M 或MM , D 或DD

    返回日期最后几位

    

    

    

    syear转换

       日期转换

     

     Q

      Q 返回当前日期所在的季度       

      

    RM

     返回罗马数字月份

    

    Month

       返回当前月份

      

    WW

      返回当前处于第几周

      

    W

      查询当前处于本月第几周

    

    DDD

      查询处于当年第几天

      

    DD

    查询处于当月第几天

    

    D

     查询处于本周第几天

      

    DY

     查找周内第几日

     

    HH或HH24

      小时,HH默认12小时制,HH24为24小时制。

      

    MI

      分钟

    --查询当前第几分钟

    

   SS

    秒

    

4.转换函数

to_char() 转换成字符串

  

   

    日期格式转换 

 to_number ()   字符转换成数字

  

  

to_date()  字符串转换成日期

    年:YYYY, 月:MM ,  日 :DD,时:HH24 , 分:MI  ,秒 :SS

    

5.通用函数

  NVL() 函数,数值出现null(空)情况 。

  

  decode()函数

    类似用法:  if....else或 case……when ……then  ……end

  用法:decode(列/表达式,值1,结果1,值2,结果2……)

Oracle单行函数用法的更多相关文章

  1. Oracle ltrim() 函数用法

    Oracle ltrim() 函数用法 2015-03-21 20:42:40 Je_WangZhe 阅读数 8834更多 分类专栏: Oracle   版权声明:本文为博主原创文章,遵循CC 4.0 ...

  2. Oracle 单行函数

    一.什么是函数 任何东西,只要它能接收输入,对输入进行加工并产生输出,它就可以被称为函数. 二.单行函数简介 单行函数只对表中的一行数据进行操作,并且对每一行数据只产生一个输出结果.单行函数可以接受一 ...

  3. Oracle单行函数笔记

    Oracle中单行函数的分类:1.字符函数substr():字符串截取select substr('我爱你,你知道么?',0,4) from dual执行结果:我爱你,length函数:字符串长度se ...

  4. Oracle单行函数

    一.尽管各个数据库都是支持sql语句的.可是每一个数据库也有每一个数据库所支持的操作函数,这些就是单行函数.假设想进行数据库开发的话.除了要回使用sql语句外,就是要多学习函数. 1.单行函数的分类: ...

  5. oracle trim函数用法详解

    在oracle数据库中,trim一般都是用在删除字符串两边的空格.实际上,trim也可以用来删除字符串两边的指定字符.并且trim指定删除的字符串只能是单个字符Oracle TRIM函数是很常见的函数 ...

  6. Oracle单行函数。。。

    单行函数 --字符函数--1.ASCII 返回与指定的字符对应的十进制数;select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') spa ...

  7. Oracle单行函数基础运用

    单行函数 整个SQL的精髓:select语句+单行函数(背) 字符串函数 常用的处理字符串的函数有如下: No. 函数名 含义 1 UPPER(c1)  upper 将字符串全部转为大写 2 LOWE ...

  8. 关于Oracle单行函数的讲解

    单行函数:对单个数值进行操作,并返回一个值. 分类:1.字符函数    1)concat(a,b) 拼接a,b两个字符串数据    2)initcap(x) 将每个单词x首字母大写     3)low ...

  9. [转载]Oracle ltrim() 函数用法

    前面有说到过LPAD和RPAD这两个函数用法的文章,今天发现与之相反意义的另外两个函数,那就是LTRIM() RTRIM(). 这次就挑LTRIM() 这一函数来讲讲: 具体的语法格式如下: LTRI ...

随机推荐

  1. VS 正则表达式替换内容

    很少使用VS的正则替换功能,最近因为需要添加大量的默认值,但是又不想重新类,就想到了这个. 1.替换带有///描述的属性 查找的正则表达式: /// <summary>((.)*((.|\ ...

  2. 1、Angular2 Component 组件

    angular2借鉴了.http://www.cnblogs.com/lewis617/p/5191007.html 导入了自己的思维方式 1.基本属性 2.*语法与template标签 3.组件的嵌 ...

  3. jeecg308 <t:authFilter />标签失效的问题

    <%--该标签放到body末尾会无效,估计是js冲突,放到body前好用--%><t:authFilter /> <body></body>

  4. 译:面试投行的20个Java问题

    原文链接:https://dzone.com/articles/var-work-in-progress 作者:Anghel Leonard 译者:沈歌 如果你需要准备面试,可以看一下这篇博客中20个 ...

  5. Datatable paging,Repeater with Paging

    /// <summary> /// 塗聚文 /// 20140225 /// </summary> public partial class DatatablePage : S ...

  6. MySQL远程连接:Host 'x' is not allowed to connect to this MySQL server

    远程连接MySQL时发现如下错误: java.sql.SQLException: null, message from server: "Host '192.168.30.23' is no ...

  7. sketchup 与 ArcGIS 10 的交互(转)

    来自:http://blog.csdn.net/kikitamoon/article/details/9036347 许多用户在 ArcGIS 9.2 时代习惯于使用 Sketchup 插件,但是,9 ...

  8. qt 创建线程

    http://www.cnblogs.com/xinxue/p/6840315.html Qt 之 QtConcurrent 本文以 Qt 中的 QtConcurrent::run() 函数为例,介绍 ...

  9. mongodb 3.4 学习 (四)分片

    https://www.linode.com/docs/databases/mongodb/build-database-clusters-with-mongodb 由三部分组成 shard: 每个s ...

  10. sqlserver row_number函数的用法

    ROW_NUMBER()函数将针对SELECT语句返回的每一行,从1开始编号,赋予其连续的编号 必须和over一起使用 select *,ROW_NUMBER() over(order by prod ...