如何在查询中对日期执行操作?
Posted
技术标签:
【中文标题】如何在查询中对日期执行操作?【英文标题】:How to perform operations on dates in queries? 【发布时间】:2013-11-20 13:25:14 【问题描述】:我想为查询中的字段添加 100 天:
SELECT DATE_ADD("date" + INTERVAL '100' DAY) FROM "history";
或其他...但它不适用于默认的 HSQLDB 前端...
有什么解决方法吗?
【问题讨论】:
我使用的是 LibreOffice V 4.1.2.3,可能因为一个错误我不能这样做。 “日期”的字段类型为 DATE。它必须是 TIMESTAMP 还是 DATETIME ? 嗯,对于低于 2.x 的 HSQLDB 版本显然不可能 【参考方案1】:您不需要 date_add(),只需将间隔添加到列中即可:
SELECT "date" + INTERVAL '100' DAY
FROM "history";
【讨论】:
@BogeyJammer:显然你使用的是过时的 HSQLDB 版本 对……我刚刚检查了嵌入在 LibO 4.1 中的版本:v1.8。伤心……【参考方案2】:OpenOffic 和 LO 中的默认 HSQLDB 版本是 1.8。不支持此功能。
HSQLDB 2.x 版支持多种日期/时间算术函数和表达式。
如果列名为“日期”,也支持这种形式。注意函数名中没有下划线:
SELECT DATEADD('day',100, "date") FROM "history";
【讨论】:
使用过时的 HSQLDB……抱歉……以上是关于如何在查询中对日期执行操作?的主要内容,如果未能解决你的问题,请参考以下文章