2

SAP HANA 中是否有与 PostgreSQL 具有相同语义的函数age,即返回给定时间戳和当前时间戳之间的差异?

我知道

ADD_YEARS(COLUMN_NAME, 2) <= NOW()

在 SAP HANA 中将对应于

(extract (year from age( COLUMN_NAME )) <= 2 ) 

在 PostgreSQL 中。不幸的是,这不是我的选择,因为我没有信息<= 2。我正在寻找一种将age(COLUMN_NAME)(PostgreSQL)转换为 SAP HANA 的方法。

有任何想法吗?

4

4 回答 4

2

尝试这个:

SECONDS_BETWEEN(<timeA>, <timeB>)
于 2013-09-30T17:53:29.123 回答
2

使用 SPS12 有YEARS_BETWEEN()可用的功能:

  select years_between(current_date, add_years(current_date, -10)) from dummy;

10

于 2017-06-02T07:20:22.143 回答
1

这对我计算 SPS11 中的年龄很有用:

if(format(now(), 'MMDD') >= format("DateOfBirth", 'MMDD'),
    int(component(now(), 1)) - int(component("DateOfBirth", 1)),
        if(int(component(now(), 1)) = int(component("DateOfBirth", 1)), 0,
            int(component(now(), 1)) - int(component("DateOfBirth", 1)) - 1))
于 2017-11-16T04:23:55.303 回答
0

select floor(days_between(to_date(timestamp1), to_date(timestamp2))/365) from dummy;

它会成功的

于 2017-06-01T07:17:20.330 回答