在SQL中联接表后,通过从当前日期减去日期列来生成新列



我已经联接了两个表,我想在联接的结果中添加另一列。此列将是当前日期减去称为start_date的列日期的结果。我想把新的专栏称为天,因为差异将以天为单位。

以下是我的加入方式:

SELECT t.kind,
t.start_date,
t.user,
t.user_email,
t.completed,
g.name
FROM d_trans AS t
JOIN d_gar AS g
ON t.rest_id = g.id
WHERE t.completed = false
AND t.kind = 'RESTING';

我的SQL编码技能有限。我通常只在导入数据后使用R。这在R中很简单,但我不确定如何在SQL中做到这一点。我在网上查找类似的问题,看到了ALTER TABLE ADD添加新列和函数GETDATE()获取当前日期之类的东西,但我尝试的一切都不起作用。我在AWS的Athena工作,我不知道我的问题是否是由于Athena的限制。

使用date_diff('day',current_date,date_col(函数:

SELECT   t.kind,
t.start_date,
t.user,
t.user_email,
t.completed,
g.name,
date_diff('day', cast(t.start_date as timestamp), current_timestamp)  as days
FROM d_trans AS t
JOIN d_gar AS g
ON t.rest_id = g.id
WHERE t.completed = false
AND t.kind = 'RESTING';

相关内容

  • 没有找到相关文章

最新更新