我正在尝试获取在表(在 Amazon Redshift 上)中执行插入的最后日期,是否有任何方法可以使用元数据执行此操作?这些表不存储任何时间戳列,即使它们有时间戳列,我们也需要找出 3k
表,因此这是不切实际的,因此元数据方法是我们的策略。有什么建议吗?
最佳答案
查询的所有插入执行步骤都记录在STL_INSERT中.此查询应为您提供所需的信息:
SELECT sti.schema, sti.table, sq.endtime, sq.querytxt
FROM
(SELECT MAX(query) as query, tbl, MAX(i.endtime) as last_insert
FROM stl_insert i
GROUP BY tbl
ORDER BY tbl) inserts
JOIN stl_query sq ON sq.query = inserts.query
JOIN svv_table_info sti ON sti.table_id = inserts.tbl
ORDER BY inserts.last_insert DESC;
注意:STL 表仅保留大约两到五天的日志历史记录。
关于amazon-redshift - Amazon Redshift 如何获取表插入数据的最后日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38514599/