首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oracle|to_date()格式化日期【坑】

今天调整报表检索条件的时候遇到to_date()格式化日期的问题,明细如下: 1.总数据 159条 select * from daily_file_information; 2.查询每月数据...('2020-03','yyyy-mm') and to_date('2020-05','yyyy-mm') ; 4.第二种查询方式 【...大于等于...小于等于...】...('2020-03','yyyy-mm') and dfi_create_time to_date('2020-05','yyyy-mm') ; 5.差异数据:to_date()格式化4条5月份数据...to_date('2020-05') 结果为:2020/05/01 结论: 经过几个SQL的查询方式对比发现以to_date()转换数据查询的结果可能与预期结果数据不一致。...一般情况下在做类似时间过滤的时候我还是比较喜欢用to_char()的方式,根据这几个查询的结论而言还是建议大家慎用to_date()这个函数。

1.1K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SQL函数 TO_DATE(二)

    SQL函数 TO_DATE(二)一年中的某一天(DDD 格式)可以使用 DDD 将一年中的某一天(自 1 月 1 日以来经过的天数)转换为实际日期。...儒略历日期(J格式)SQL中,儒略日可用于1840年12月31日之前的任何日期。因为在内部将这个日期表示为0,所以需要特殊的语法来表示更早的日期。为此,TO_DATE提供了“J”(或“J”)格式。...儒略日转换将七位数的内部数值(儒略日计数)转换为显示格式或ODBC格式的日期。...1721424 (1/1/1) 之前的儒略日计数与其他软件实现兼容,例如 Oracle。它们与通常使用的 BCE 日期不同。正常使用中,没有Year 0;日期从 12/31/-1 到 1/1/1。...在 Oracle 使用中,儒略日期 1721058 到 1721423 完全无效,并返回错误。这些儒略日期返回不存在的第 0 年作为占位符。因此,涉及 BCE 日期的计算必须调整一年以对应于常见用法。

    1.4K20

    TO_DATE函数索引报错ORA-01743

    鉴于数据量比较大,需要使用索引,那么很容易想到的是建立to_date(effdate,’DDMONYY’)的一个函数索引, ? 创建索引报错了,ORA-01743, ?...提示:“只能对纯粹的函数创建索引,SQL表达式不能使用任何依赖于当前session状态的信息”。从这SQL看,没有使用SYSDATE、USER、USERENV()这些函数,为什么还提示这错误?...原因就是TO_DATE函数中使用了表示年份的YY,对于格式相同的输入,返回的则是不同的结果,有些抽象,结合例子看下,假设今天是1月份,则如下SQL返回的是2010年1月1日(1月1日是因为未指定月日,则做了类似...之所以是结果不同,是因为TO_DATE使用了SYSDATE作为基准来输出的日期,因此SQL其实还是基于了session,所以TO_DATE函数索引会有ORA-01743。...总结: 1.TO_DATE函数索引的创建是有前提条件,不能依赖现有的session,像YY这种格式,隐含依赖了session,所以还是会报错。

    94720

    oracle的todate函数的日期格式_oracle limit的用法

    今天说一说oracle的todate函数的日期格式_oracle limit的用法,希望能够帮助大家进步!!!...oracleto_date 1、to_date()函数(俗称:日期转化函数) 1.1格局 to_date(“要转化的字符串”,”转化的格局”)//两个参数的格局必须匹配,不然会报错。...oracleto_date函数格式 to_date()是Oracle数据库函数的代表函数之一,下文对Oracleto_date()函数的几种用法作了具体的介绍阐明,需要的朋友可以参阅下 在Oracle数据库中...,Oracleto_date()函数是咱们常常运用的函数,下面就为您具体介绍Oracleto_date()函数的用法,期望可以对您有所启迪。...to_date()与24小时制表明法及mm分钟的显现: 一、在运用Oracle的to_date函数来做日期转化时,许多Java程序员也许会直接的采用”yyyy-MM-ddHH:mm:ss”的格局作为格局进行转化

    8.7K40

    oracle基础|oracle函数的使用|oracle单行函数(字符函数、日期函数、数字函数、转换函数)的使用

    ,函数是oracle非常重要的功能,如果将函数学会了,那么基本上在项目的一些增删改查功能,就可以很轻松的上手了,所以这篇文章一定要认真的看 二、什么是函数 这里的函数相当于java中写好的一些方法,有名字...trunc(sysdate,'dd')--返回当前年月日 5、类型转换函数 1).TO_CHAR 将日期或者数值转换成字符串 2).TO_NUMBER 将字符串转换成数字 3).TO_DATE 将日期字符串转换成日期...') from dual .使用format的元素格式 例如: select to_date('10-12-2016','dd-mm-yyyy')...语言环境设置为英文下面可以运行 select to_date('25-MAY-95','dd-MONTH-yy') from dual; oracle数据库中表示一个日期数据的几种方式...1.sysdate 2.oracle默认的日期格式 例如:'25-MAY-95' 3.to_date函数转换

    7.4K10

    oracle如何格式化日期,Oracle 日期格式化处理汇总

    一、 日期及时间格式化应用TO_CHAR(日期,格式化参数) 1、返回任意有效分割符拼接的年月日字符串 1.1、Select to_char(sysdate,'yyyy/mm/dd') From dual...(‘2015-04-05′,’YYYY-MM-DD’),’D’) when ‘1’ then ‘日’ else to_char(to_char(to_date(‘2015-04-05′,’YYYY-MM-DD...(‘2015-04-09′,’yyyy-mm-dd’),’w’)||’周’ from dual; ********************* 第2周 2.8、DL 根据数据中参数中的格式返回长日期形式、...(‘2015-04-02’, ‘yyyy-mm-dd’)- to_char(to_date(‘2015-04-02’, ‘yyyy-mm-dd’), ‘d’) + 2 From dual; ******...********** 2015-03-30 3.2、 返回当年的第XXX天对应的日期 Select to_date(’10’,’ddd’) from dual; ************* 2015-01

    7.2K20
    领券