首先,来介绍一下Oracle的overlaps函数的用法:

overlaps函数是用来判断两个时间段是否有重叠的

比如说计算 (a,b),(c,d)

就可以写成:

select * from dual where (a,b) overlaps (c,d);

其中abcd都是日期格式。

注意:比较的只能是日期。如果是数字,则会报错 ORA-00932: inconsistent datatypes

最近项目在使用db2数据库,遇到overlaps函数需要转换成db2中的语法方言,其实就是转换为通用的sql语法。

对应的写法有:

判断两个时间段是否有重叠

(a,b),(c,d)

判断两段时间是否有重叠

方法一

select 'yes' from dual where d>a and c<b;

例子:

select *
from PMK_PLANNING_INFO
where id = 'U2KsqII5NdumrClO5td'
and to_date('2019/07/27', 'YYYY/MM/DD') > to_date(begin_time)
and to_date('2018/06/27', 'YYYY/MM/DD') < to_date(end_time);

方法二

select 'yes' from dual where (a, b) overlaps (c,d);

例子:

select *
from PLANNING_INFO
where id = '001'
and (to_date(begin_time), to_date(end_time))
overlaps
(to_date('2018/06/27', 'YYYY/MM/DD'),
to_date('2019/07/27', 'YYYY/MM/DD'));

方法三

select 'yes' from dual where a between c and d or d between a and b;

例子:

select *
from PMK_PLANNING_INFO
where id = 'U2KsqII5NdumrClO5td'
and to_date(begin_time) between to_date('2018/06/27', 'YYYY/MM/DD') and to_date('2019/07/27', 'YYYY/MM/DD')
or to_date('2019/07/27', 'YYYY/MM/DD') between to_date(begin_time) and to_date(end_time);

a : to_date(begin_time)

b :to_date(end_time)

c :to_date('2018/06/27', 'YYYY/MM/DD')

d :to_date('2019/07/27', 'YYYY/MM/DD')

Oracle的overlaps函数转换其他数据库语法相关推荐

  1. mysql中tonumber函数_Oracle数据库之oracle的TO_NUMBER函数

    本文主要向大家介绍了Oracle数据库之oracle的TO_NUMBER函数,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助. TO_NUMBER(x [, format], [  ...

  2. oracle内部函数,[数据库]Oracle内置函数

    [数据库]Oracle内置函数 0 2020-08-21 19:00:31 lpad()函数:用于左补全字符串. 例:lpad('原始数据','预期长度','填充字符') ,lpad('123','5 ...

  3. oracle查看时间戳函数,oracle数据库实现获取时间戳的无参函数

    oracle数据库实现获取时间戳的无参函数 代码如下所示: CREATE OR REPLACE FUNCTION GETMSTIMESTAMP RETURN NUMBER AS MSTIMESTAMP ...

  4. oracle和hive之间关于sql的语法差异及转换

    1. oracle的(+) 改为hive左右连接 oracle (+)学习_cclovezbf的博客-CSDN博客最近工作需要将oracle的存储过程转化为hive的sql脚本.遇到很多不一样的地方, ...

  5. oracle中嵌套函数,Oracle的嵌套函数语法

    Oracle的嵌套函数语法 单行函数可以嵌套任意层: 嵌套函数从最深层开始执行. 通用函数: BFILENAME(directory,file_name) 返回操作系统中与物理文件 file_name ...

  6. Oracle 内置函数

    F.1字符函数--返回字符值 这些函数全都接收的是字符族类型的参数(CHR除外)并且返回字符值.除了特别说明的之外,这些函数大部分返回VARCHAR2类型的数值.字符函数的返回类型所受的限制和基本数据 ...

  7. oracle vm concat指定分隔符,重写Oracle的wm_concat函数,自定义分隔符、排序

    oracle中,wm_concat函数是一个聚合函数,和mysql中的group_concat函数类似,不过group_concat函数比较强大,可以定义分隔符和排序,当然所谓强大是相对的,这里假使我 ...

  8. oracle中prad函数_024 SQL函数

    1. 使用ORDER BY排序 (1) ORDER BY 子句的作用是什么? 用ORDER BY子句排序. 用于对结果集进行排序处理,提供了升序排序(ASC)与降序排序(DESC)如果不指定排序规则默 ...

  9. mysql数据库语法_MySQL数据库语法(一)

    MySQL数据库语法 数据库管理系统(DBMS)的概述 什么是DBMS:数据的仓库 方便查询 可存储的数据量大 保证数据的完整.一致 安全可靠 DBMS的发展:今天主流数据库为关系型数据库管理系统(R ...

  10. oracle将字符串的日期格式化,oracle格式化字符串 oracle 怎么把字符串转换成日期...

    Oracle数据库中如何将字符串格式化为日期 可以用 to_date('日期类型字符串','要转化的日期类型')函数进行日期格式转换 sql:select to_date('1990-12-12 12 ...

最新文章

  1. JavaScript作用域原理——预编译
  2. C++控制台读取和输出函数
  3. 执行umount 的时候却提示:device is busy 的处理方法
  4. 安全挑战和SD-WAN解决方案
  5. linux ftp做yum源,在RedHat5下架设yum源服务器(FTP)
  6. Initial load DNL_CUST_PROD0 并找出SAP S4表和CRM表的mapping关系
  7. oracle拓展磁盘空间,Oracle磁盘空间使用统计
  8. R - 变化plot字形,嵌入字体以pdf
  9. Hbase shell练习题
  10. Facebook推出高速光网络技术将共享
  11. 边缘计算,又一个轮回
  12. RM3100 stm32 hal库 spi 磁力计数据
  13. 2022全新抖音二维码生成工具源码+亲测可用
  14. CADD课程学习(13)-- 研究蛋白小分子动态相互作用-II(水中的溶菌酶 GROMACS)
  15. 这些好玩的例子,希望你也能喜欢
  16. 快速免费对接快递鸟圆通快递单号查询api接口
  17. pom文件报红Failure to find cn.xx:xxx:pom:3.x.x in https://maven.aliyun.com/repository/public/ was cached
  18. 光纤交换机后台linux,更换光纤交换机的步骤详解
  19. PhalApi+Gearman,接口MQ异步队列任务的完整开发教程
  20. 【天光学术】中国哲学论文:以老子为例看中国哲学的思辨体系

热门文章

  1. Zencart完美程序来了,首个Zencart模板引擎来了
  2. javascript编写_编写可读高效JavaScript代码的4个关键原则
  3. 动手学深度学习(第六章 循环神经网络)
  4. 裸设备和Oracle问答20例
  5. 【软件工程导论】软件工程导论笔记
  6. 佛青云怎么过鸿蒙,神都夜行录鸿蒙之境策驱三运高级怎么打 鸿蒙之境策驱三运高级打法攻略...
  7. 去八达岭看红叶(攻略)
  8. MySQL:复合查询和内外连接
  9. CSP模测(一)A卷
  10. vue配置sass全局变量