我一直在玩SAP的Hana数据库。我在cloudshare.net上找到了一个Hana(30天试用版)的实例。我一直在hdbsql上发出sql语句,这是一个命令行工具(类似于oracle中的sql * plus)
我需要帮助编写一个特定的查询来计算tracefiles的年龄。
的查询: 的
“从M_TRACEFILES中选择*”
查询返回跟踪文件及其相关信息。我感兴趣的是一列“FILE_MTIME”,它是创建文件的时间和日期。它的数据类型是“timestamp”,它在hana中具有以下格式:'yyyy-mm-dd hh24:mm:ss.fff7'其中fff是小数秒,最多7位数例如:2010-01-11 17:38:48.8020025。< / p>
要查找我需要的跟踪文件的年龄: “Current_Local_Timestamp_On_Node - Tracefile_Timestamp”。
以下是查询hana节点上当前时间戳的方法:
SELECT CURRENT_TIMESTAMP“当前时间戳”FROM DUMMY;
输出:
当前时间戳 2010-01-11 17:38:48.802
如何在一个查询中执行此操作,以便我可以在查询结果中获取所有与跟踪文件相关的信息及其年龄。
在Hana中有任何时间戳操作,比如oracle的日期操作,你可以说“sysdate - somedate”。
由于
答案 0 :(得分:2)
请点击此处查看DateTime functions of HANA
你想要的可能是
SELECT *, SECONDS_BETWEEN(CURRENT_TIMESTAMP, FILE_MTIME) FROM M_TRACEFILES
(我现在无法测试,但你明白了)