oracle

推荐列表 站点导航

当前位置:首页 > 数据库 > oracle >

oracle常用函数汇总(分享)

来源:网络整理  作者:网络  发布时间:2020-12-11 07:05
以下是对oracle中的常用函数进行了汇总介绍,需要的朋友可以过来参考下...

              Q     digit         季度                  显示值:4
              hh24 two digits 24小时进制            显示值:13
              ss    two digits 60进制                显示值:25
   TO_DATE ('2002-08-26', 'YYYY-mm-dd', 'NLS_DATE_LANGUAGE = American')     
6.月份差  
   select 1, TO_DATE(null) from dual;      
4. 两个日期间的天数     

逻辑运算符:not and or
   设置日期语言     
        ddspth spelled out, ordinal twelfth
        day    spelled out   当周第几天全写    显示值:星期五,若是英文版,显示friday       
    select floor(sysdate - to_date('20020405','yyyymmdd')) from dual;  

    可查看     
              Hour:
select to_char(sysdate,'hh24') as nowHour   from dual;   //获取时间的时  
     列的标签是第一个集合的标签
select * from emp intersect select * from emp where deptno=10 ;
        Month:     
比较运算符:> >= = != < <= like between is null in
二.ORACLE日期时间函数大全
     查询中不能包含long 列
        dd    number         当月第几天        显示值:02

        yyyy four digits 四位年                显示值:2007


算术运算符:+ - * / 可以在select 语句中使用
2. select to_char( to_date(222,'J'),'Jsp') from dual     
    显示Two Hundred Twenty-Two  

复制代码 代码如下:

              WW    digit         当年第几周            显示值:44
              W    digit          当月第几周            显示值:1
   那么12月31号中午12点之后和12月1号的12点之前是不包含在这个范围之内的。     

复制代码 代码如下:

   a_date between to_date('20011201','yyyymmdd') and to_date('20011231','yyyymmdd')     
   注意要用TO_DATE(null)     
7. 日期格式冲突问题     

例:集合运算符的使用:
        
select to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss')    from dual//


   select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day') from dual;     
              hh    two digits 12小时进制            显示值:01



1. 日期和字符转换函数用法(to_date,to_char)
        month spelled out 字符集表示          显示值:11月,若是英文版,显示november
select * from emp where deptno=10 union all select * from emp where deptno in (10,20); --包括重复行
        Day:     
select * from emp where deptno=10 union select * from emp where deptno in (10,20); --不包括重复行
        ddd    number         当年第几天        显示值:02
        mon    abbreviated 字符集表示          显示值:11月,若是英文版,显示nov    

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual;   //日期转化为字符串  
    alter system set NLS_DATE_LANGUAGE = American     
   也可以这样     
    或者在to_date中写     
    alter session set NLS_DATE_LANGUAGE = American     
              mi    two digits 60进制                显示值:45
select to_char(sysdate,'mm')    as nowMonth from dual;   //获取时间的月  
3.求某天是星期几     

一、运算符
     使用order by时,必须使用位置序号,不能使用列名
              Second:

    select * from V$NLS_PARAMETERS     
select * from emp minus select * from emp where deptno=10;
intersect ,union, union all, minus
集合运算符: intersect ,union, union all, minus
select to_char(sysdate,'ss')    as nowSecond from dual;   //获取时间的秒
        24小时格式下时间范围为: 0:00:00 - 23:59:59....     
        yyy three digits 三位年                显示值:007

   所以,当时间需要精确的时候,觉得to_char还是必要的
        mm    number     两位月              显示值:11
   UNION     
    注意我这只是举了NLS_DATE_LANGUAGE,当然还有很多,     
   select id, active_date from table1     
    select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;     
要求:对应集合的列数和数据类型相同
        yy two digits 两位年                显示值:07
    输入的格式要看你安装的ORACLE字符集的类型, 比如: US7ASCII, date格式的类型就是: '01-Jan-01'     


   monday     
        Year:     
8.     
              Minute:
   星期一     

select to_char(sysdate,'mi')    as nowMinute from dual;   //获取时间的分  
   select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;     
        12小时格式下时间范围为: 1:00:00 - 12:59:59 ....

   TO_DATE格式(以时间:2007-11-02   13:45:25为例)

select to_char(sysdate,'yyyy') as nowYear   from dual;   //获取时间的年  
5. 时间为null的用法     
        dy    abbreviated 当周第几天简写    显示值:星期五,若是英文版,显示fri
              其它
   ALTER SESSION SET NLS_DATE_LANGUAGE='AMERICAN';     
连接运算符:|| select deptno|| dname from dept;
select to_char(sysdate,'dd')    as nowDay    from dual;   //获取时间的日  
    select * from nls_session_parameters     

相关热词: oracle

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/sql/oracle/2468.shtml

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

oracle常用函数汇总(分享)

2020-12-11 编辑:网络


              Q     digit         季度                  显示值:4
              hh24 two digits 24小时进制            显示值:13
              ss    two digits 60进制                显示值:25
   TO_DATE ('2002-08-26', 'YYYY-mm-dd', 'NLS_DATE_LANGUAGE = American')     
6.月份差  
   select 1, TO_DATE(null) from dual;      
4. 两个日期间的天数     

逻辑运算符:not and or
   设置日期语言     
        ddspth spelled out, ordinal twelfth
        day    spelled out   当周第几天全写    显示值:星期五,若是英文版,显示friday       
    select floor(sysdate - to_date('20020405','yyyymmdd')) from dual;  

    可查看     
              Hour:
select to_char(sysdate,'hh24') as nowHour   from dual;   //获取时间的时  
     列的标签是第一个集合的标签
select * from emp intersect select * from emp where deptno=10 ;
        Month:     
比较运算符:> >= = != < <= like between is null in
二.ORACLE日期时间函数大全
     查询中不能包含long 列
        dd    number         当月第几天        显示值:02

        yyyy four digits 四位年                显示值:2007


算术运算符:+ - * / 可以在select 语句中使用
2. select to_char( to_date(222,'J'),'Jsp') from dual     
    显示Two Hundred Twenty-Two  

复制代码 代码如下:

              WW    digit         当年第几周            显示值:44
              W    digit          当月第几周            显示值:1
   那么12月31号中午12点之后和12月1号的12点之前是不包含在这个范围之内的。     

复制代码 代码如下:

   a_date between to_date('20011201','yyyymmdd') and to_date('20011231','yyyymmdd')     
   注意要用TO_DATE(null)     
7. 日期格式冲突问题     

例:集合运算符的使用:
        
select to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss')    from dual//


   select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day') from dual;     
              hh    two digits 12小时进制            显示值:01



1. 日期和字符转换函数用法(to_date,to_char)
        month spelled out 字符集表示          显示值:11月,若是英文版,显示november
select * from emp where deptno=10 union all select * from emp where deptno in (10,20); --包括重复行
        Day:     
select * from emp where deptno=10 union select * from emp where deptno in (10,20); --不包括重复行
        ddd    number         当年第几天        显示值:02
        mon    abbreviated 字符集表示          显示值:11月,若是英文版,显示nov    

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual;   //日期转化为字符串  
    alter system set NLS_DATE_LANGUAGE = American     
   也可以这样     
    或者在to_date中写     
    alter session set NLS_DATE_LANGUAGE = American     
              mi    two digits 60进制                显示值:45
select to_char(sysdate,'mm')    as nowMonth from dual;   //获取时间的月  
3.求某天是星期几     

一、运算符
     使用order by时,必须使用位置序号,不能使用列名
              Second:

    select * from V$NLS_PARAMETERS     
select * from emp minus select * from emp where deptno=10;
intersect ,union, union all, minus
集合运算符: intersect ,union, union all, minus
select to_char(sysdate,'ss')    as nowSecond from dual;   //获取时间的秒
        24小时格式下时间范围为: 0:00:00 - 23:59:59....     
        yyy three digits 三位年                显示值:007

   所以,当时间需要精确的时候,觉得to_char还是必要的
        mm    number     两位月              显示值:11
   UNION     
    注意我这只是举了NLS_DATE_LANGUAGE,当然还有很多,     
   select id, active_date from table1     
    select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;     
要求:对应集合的列数和数据类型相同
        yy two digits 两位年                显示值:07
    输入的格式要看你安装的ORACLE字符集的类型, 比如: US7ASCII, date格式的类型就是: '01-Jan-01'     


   monday     
        Year:     
8.     
              Minute:
   星期一     

select to_char(sysdate,'mi')    as nowMinute from dual;   //获取时间的分  
   select to_char(to_date('2002-08-26','yyyy-mm-dd'),'day','NLS_DATE_LANGUAGE = American') from dual;     
        12小时格式下时间范围为: 1:00:00 - 12:59:59 ....

   TO_DATE格式(以时间:2007-11-02   13:45:25为例)

select to_char(sysdate,'yyyy') as nowYear   from dual;   //获取时间的年  
5. 时间为null的用法     
        dy    abbreviated 当周第几天简写    显示值:星期五,若是英文版,显示fri
              其它
   ALTER SESSION SET NLS_DATE_LANGUAGE='AMERICAN';     
连接运算符:|| select deptno|| dname from dept;
select to_char(sysdate,'dd')    as nowDay    from dual;   //获取时间的日  
    select * from nls_session_parameters     

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/sql/oracle/2468.shtml

相关文章

风云图片

推荐阅读

返回oracle频道首页