我试图找到两个时间戳之间的时差并将其存储在列中。当我检查表中的输出时,我看到该值是一个巨大的数字,而不是天/小时的差异。我正在使用 amazon redshift 作为数据库。
time_duration列的数据类型: varchar
以下是示例:
order_no,order_date,complain_date,time_duration
1001,2018-03-10 04:00:00,2018-03-11 07:00:00,97200000000
但是我希望time_duration列显示1天3小时
当我将time_duration存储在表中然后查询以查看输出时,会发生此问题。
谁能帮忙。
谢谢。
答案 0 :(得分:1)
按照以下方式进行操作,会导致小时数差异
select datediff(hour,order_date,complain_date) as diff_in_hour from your_table ;
如果您想一天做,请按照以下方式做
select datediff(day,order_date,complain_date) as diff_in_day from your_table;
您可以使用datediff
函数来更新表列time_duration
。
有关更多详细信息,请参见Redshift
documentation。