【发布时间】:2020-09-27 22:37:02
【问题描述】:
我正在使用 SAS 连接到 Teradata。给定以下数据集(它是一个定期更新记录的事务表),我需要能够从过去一小时(至少 3 个)中选择记录。例如,如果我在下午 6 点运行查询,我应该得到 txn_id 5678、1985、2985(请参阅下面的数据集)。你能帮忙吗?这需要在 proc sql(连接到 teradata)甚至只是在 Teradata SQL Assistant 中运行的 SQL 查询中完成。
数据集:
TXN_ID Date Time
1234 20200608 4:00 PM
5678 20200608 5:00 PM
1985 20200608 5:30 PM
2985 20200608 5:45 PM
2365 20200608 2:30 PM
预期输出:
TXN_ID Date Time
5678 20200608 5:00 PM
1985 20200608 5:30 PM
2985 20200608 5:45 PM
【问题讨论】:
-
时间戳是否分成两列?有哪些数据类型?
-
不,它是单列。 “时间”列包含相关数据
-
如果列是时间戳数据类型:
where timestampcolumn >= current_timestamp - interval '1' hour'