数時間ごとに実行され、ユーザーが構成したバックアップジョブを記録するルーチンがあります。各ジョブはテーブルにエントリを作成し、エントリの数は0から無限大までのいずれかになります(ユーザーが持っているジョブの数に完全に依存します)。
以下の例では、ユーザーは現在3つのバックアップジョブを構成していますが、私が使用しているSQLクエリは、1週間以上前のデータプルからバックアップをプルしています。LIMITを実行せずに最新のタイムスタンプからエントリのみを取得するようにクエリを調整する方法がわかりません(表示されるエントリの数がわからないため、LIMITを使用できません)。
SELECT BACKUP_SET_ID, BACKUP_SET_TYPE, Max(SNAPSHOT_TIME) maxTime
FROM TABLE_snapshots_backupsets
WHERE ACCOUNT_ID='6000001'
GROUP BY BACKUP_SET_ID;
出力:
+---------------+----------------------------------+---------------------+
| BACKUP_SET_ID | BACKUP_SET_TYPE | maxTime |
+---------------+----------------------------------+---------------------+
| 1359127993672 | FILE | 2013-02-04 08:00:01 |
| 1359145357475 | FILE | 2013-02-04 08:00:01 |
| 1359145395067 | VMware Virtualization | 2013-02-04 08:00:01 |
| 1359145404910 | Microsoft Windows Virtualization | 2013-01-27 12:00:01 |
+---------------+----------------------------------+---------------------+
4 rows in set (0.00 sec)
したがって、上記の場合、ユーザーが最新のデータプルの時点で構成されていないため、クエリで「MicrosoftWindows仮想化」エントリをプルしないようにする必要があります。最新のタイムスタンプを持つエントリのみをプルする必要があります。
ありがとうございました!