2

我一直在玩 SAP 的 Hana 数据库。我在 cloudshare.net 上找到了一个 Hana 实例(30 天试用版)。我一直在 hdbsql 上触发 sql 语句,这是一个命令行工具(类似于 oracle 中的 sql*plus)

我需要一个特定查询的帮助来计算跟踪文件的年龄。

询问:

“从 M_TRACEFILES 中选择 *”

该查询返回跟踪文件及其相关信息。我对一列“FILE_MTIME”感兴趣,它是创建文件的时间和日期。它的数据类型是“时间戳”,在 hana 中具有以下格式:'yyyy-mm-dd hh24:mm:ss.fff7' 其中 fff 是小数秒,最多 7 位数字示例:2010-01-11 17:38:48.8020025。

要查找我需要的跟踪文件的年龄: “Current_Local_Timestamp_On_Node - Tracefile_Timestamp”。

以下是在hana节点上查询当前时间戳的方法:

从 DUMMY 中选择 CURRENT_TIMESTAMP“当前时间戳”;

输出:

当前时间戳 2010-01-11 17:38:48.802

我如何在一个查询中执行此操作,以便我可以在查询结果中获取所有与跟踪文件相关的信息及其年龄。

在 Hana 中有任何时间戳操作,例如 oracle 的日期操作,您可以在其中说“sysdate - somedate”。

谢谢

4

1 回答 1

2

有关 HANA的 DateTime 功能,请参见此处

你可能想要类似的东西

SELECT *, SECONDS_BETWEEN(CURRENT_TIMESTAMP, FILE_MTIME) FROM M_TRACEFILES

(我现在不能测试这个,但你明白了)

这是HANA的整个sql指南

于 2013-08-30T07:59:45.937 回答