select to_date('2013', 'yyyy') from dual;查询出来的结果为2013-08-01
to_date('2013','yyyy')>to_date('20130701','yyyymmdd')这个条件满足,所以为true,
to_date('2013','yyyy')>to_date('20130801','yyyymmdd')这里结果为相等,所以结果为false.
如果改为to_date('2013','yyyy')>=to_date('20130801','yyyymmdd')结果就为true
to_date('2013','yyyy')>to_date('20130701','yyyymmdd')这个条件满足,所以为true,
to_date('2013','yyyy')>to_date('20130801','yyyymmdd')这里结果为相等,所以结果为false.
如果改为to_date('2013','yyyy')>=to_date('20130801','yyyymmdd')结果就为true
解决方案 »
- 求一个sql 语句 + 急急急 ???
- 关于sql转义序列的问题
- oracle10g 主机身份证明
- 求oracel导入导出的命令!谢谢啦(急)
- SQL 怎样倒序排列使为空时间显示在最后
- 关于DBLINK的问题
- 如何用SQL*PLUS查出表中那些重复的记录???
- 添加数据文件时 报错说操作系统的权限不够, 怎么办? 高手指教一下
- 如何在oracle中指定要存储过程要使用的文本文件?
- ORACLE 9i下pro*c问题,急用,请大家帮忙,在线等,thanks first
- Oracle 未找到要求的FROM關鍵字?
- 请教一个数据库查询问题 有张表里面有经纬度列 longitude和latitude 但现在在里面创了新列的两个经纬度列en _longitude和en_lat
to_date('2013','yyyy')>to_date('20130701','yyyymmdd')这个条件满足,所以为true,
to_date('2013','yyyy')>to_date('20130801','yyyymmdd')这里结果为相等,所以结果为false.
如果改为to_date('2013','yyyy')>=to_date('20130801','yyyymmdd')结果就为true
正解,我记得早期版本返回的是本年的第一天,始终不知道为啥要改成现在这样
to_date('2013','yyyy')>to_date('20130701','yyyymmdd')这个条件满足,所以为true,
to_date('2013','yyyy')>to_date('20130801','yyyymmdd')这里结果为相等,所以结果为false.
如果改为to_date('2013','yyyy')>=to_date('20130801','yyyymmdd')结果就为true
正解,我记得早期版本返回的是本年的第一天,始终不知道为啥要改成现在这样我也以为是 每年的第一天, 现在 看来取的是年份以及 当前月的第一天啊。 的确觉得以前的更说得通。
to_date('2013','yyyy')>to_date('20130701','yyyymmdd')这个条件满足,所以为true,
to_date('2013','yyyy')>to_date('20130801','yyyymmdd')这里结果为相等,所以结果为false.
如果改为to_date('2013','yyyy')>=to_date('20130801','yyyymmdd')结果就为true
之前都以为是返回本年第一天,涨姿势了。
------------------- -------------------
2013-08-01 00:00:00 2013-07-01 00:00:00
SQL> select to_date('2014','yyyy') from dual
2 union all
3 select to_date('201406','yyyymm') from dual
4 ;
TO_DATE('2014','YYYY')
----------------------
2014/8/1
2014/6/1
SQL>
结果为true。这两个是相等的
select to_date('2014','yyyy') from dual;获取的是当月的第一天,如下所示:运行一下