如何在 Teradata SQL 中创建增量查询

how do I create a delta query in Teradata SQL

我正在使用 Teradata,我的查询是

SELECT deptno, name, salary
FROM personnel.employee;

以上 table 每天自动更新,例如新行 added/deleted,现有值得到更新。没有 date/time 字段。

请问有什么方法可以只获取变化而不能获取所有记录吗?还有一种方法可以知道哪些记录是新的,哪些是更新的?很高兴 运行 多次查询,因为文件会很小。 Teradata 是否有内部 table 用于保存 updates/deletes 的记录?我需要特别许可才能访问此类 table 吗?谢谢。

在给定的场景中,您没有机会看到差异。但是一些改善table/情况的想法:

  • 您可以将 Table 更改为 TEMPORAL table。然后 Teradata 将添加带有自动维护的时间戳的不可见列。有了它,您可以访问这些时间列以获取差异。在您的情况下,它看起来像是一个事务性时间 table。 (这是我更喜欢的)
  • 您可以创建自己的 table 保持最新状态,并且每次加入此 table 以获得增量。