SELECT cu.user_id, cu.last_activity, cu.updated_time,
DATE_PART('day', cu.last_activity - cu.updated_time), to_char(end_date - start_date, 'DD.HH24')
FROM stats.core_users cu
WHERE cu.user_id = '117132014' or cu.user_id = '117132012';
获得如下结果:
117132014 2017-12-11 10:34:51.349905 2017-12-09 12:00:38.503518 1 01.22
117132012 2017-12-11 05:18:20.312283 2017-12-08 15:46:51.914085 2 02.13
在第一种情况下(而不是1天和22小时)获得与1.91天的分数的日差异是否可行,以更精确,更容易适应机器学习模型?
答案 0 :(得分:0)
date_part()
执行其名称所说的内容:它返回日期,间隔或时间戳中的多个元素的一部分。在您的情况下,它是间隔的一部分(因为timestamp - timestamp
返回interval
)。
如果您希望将结果作为分数,则需要extract
间隔的秒数,然后将其除以86400(这是一天中的秒数)
extract(epoch from cu.last_activity - cu.updated_time) / 86400