一尘不染

用jOOQ间隔执行date_sub()函数

sql

从昨天开始,我一直在处理这个问题。

问题是我正在将查询迁移到jOOQ,并且在尝试实现此部分时遇到了困难

select * from table where condition1 and date1 >= date_sub(now(), interval 1 days)

具体来说,这部分条件是: 带有jOOQ的date_sub(now(),间隔1天)

所以我的问题是:

  1. 我应该在jOOQ中使用哪些函数来表示date_sub?

  2. 如何使用jOOQ实施 间隔X天

为了明确起见,日期属于“ 时间戳记* ”类型 *

提前致谢!


阅读 145

收藏
2021-05-30

共1个答案

一尘不染

解决方案:

由于对Oracle数据库略有偏见,jOOQ只需使用以下方法即可实现增加/减少日期间隔:

// Java
DSL.currentTimestamp().sub(1);

上面的渲染:

-- Oracle
sysdate - 1

-- MySQL
date_add(current_timestamp(), interval -1 day)

当然date_add(),如果您愿意,也可以直接访问该函数:

// Java
DSL.dateAdd(DSL.currentTimestamp(), -1);

一些文档:

2021-05-30