私は毎日x_data
テーブルのlatest_id
を格納するテーブルetl_control
を持っています。今では、毎日の行数を取得する必要があります。 私の考えは、毎日の条件x_data.id <= etl_control.latest_id
に基づいてカウントを取得し、カウントを取得するクエリを実行することです。idがRedshiftの一連の値よりも小さい行のクエリ数
表の構造は次のとおりです。
etl_control:
record_date | latest_id |
---------------------------------
2016-11-01 | 55 |
2016-11-02 | 125 |
2016-11-03 | 154 |
2016-11-04 | 190 |
2016-11-05 | 201 |
2016-11-06 | 225 |
2016-11-07 | 287 |
x_data:
id | value |
---------------------------------
10 | xyz |
11 | xyz |
21 | xyz |
55 | xyz |
101 | xyz |
108 | xyz |
125 | xyz |
142 | xyz |
154 | xyz |
160 | xyz |
166 | xyz |
178 | xyz |
190 | xyz |
191 | xyz |
最終結果は日ごとx_dataの行数を有するべきです。私はJOIN、WITH、COUNT(*)OVERを使っていくつかのバリエーションを試しました。しかし、最大のハードルは、x_data.idとetl_control.latest_idを繰り返し比較することです。