我正在使用hsqldb作为内存数据库进行单元测试,生产系统使用mysql运行。以下查询适用于mysql,但如果与hsqldb一起使用则不行:
select * from table where columnTimestamp + INTERVAL 'columnDays' DAY < now();
我想检索间隔基于另一列的所有特定行。当我使用固定值时,它确实与hsqldb一起使用,但这不是必需的行为。
错误消息hsqldb返回:
data exception: invalid interval format / Error Code: -3406 / State: 22006
答案 0 :(得分:3)
与列相乘恒定间隔。
select *
from table
where columnTimestamp + (INTERVAL '1' DAY * columndays) < now();