Java 如何计算应同时支持ORACLE和MYSQL数据库的两个日期之间的差异?

Java 如何计算应同时支持ORACLE和MYSQL数据库的两个日期之间的差异?,java,mysql,oracle,hibernate,createquery,Java,Mysql,Oracle,Hibernate,Createquery,我的应用程序同时支持oracle和MySQL数据库,现在我需要计算两个日期之间的差异 我的代码使用Oracle,因为它支持“-”运算符,但它不能使用MySQL。MySQL有一个DATEDIFF函数来计算差异 Query query1 = entityManager.createQuery("select ast.id,ast.name from ActSubT ast where ast.unSubDt - ast.subDt <= 1 "); List<Object>

我的应用程序同时支持oracle和MySQL数据库,现在我需要计算两个日期之间的差异

我的代码使用Oracle,因为它支持“-”运算符,但它不能使用MySQL。MySQL有一个
DATEDIFF
函数来计算差异

  Query query1 = entityManager.createQuery("select ast.id,ast.name from ActSubT ast where ast.unSubDt - ast.subDt <= 1 ");
 List<Object> result=query1.getResultList();

queryquery1=entityManager.createQuery("从ActSubT ast中选择ast.id,ast.name,其中ast.unsbdt-ast.subDt减号运算符适用于问题中提到的所有数据库。它也适用于MySql:唯一的问题是减号非常有限。@Tejash..topicstarter别无选择,然后编写两个查询以支持两种不同的SQL方言,或者需要使用像代理一样位于应用程序和RDMSE之间,可以接受一种SQL编写方式在两个RDMSE上工作。@RaymondNijland我刚刚检查过-正在使用mysql,它所说的“唯一的问题是非常有限的”是什么意思减号运算符适用于问题中提到的所有数据库。它也适用于MySql:唯一的问题是减号非常有限。@Tejash..topicstarter别无选择,然后编写两个查询以支持两种不同的SQL方言,或者需要编写一个SQL,该SQL位于应用程序和RDMSE之间,就像代理一样,可以接受在两个RDMs上都可以使用一种SQL编写风格。@RaymondNijland我刚刚检查过-就是使用mysql,它所说的“唯一的问题是非常有限的”是什么意思