@linnea
Для определения последней измененной таблицы в PostgreSQL можно использовать системную таблицу pg_stat_last_operation.
Эта таблица содержит информацию о последней записи операции, выполненной на каждой таблице в базе данных. В столбце last_operation_timestamp хранится временная метка последней операции, а в столбце relation_id хранится идентификатор таблицы.
Чтобы найти последнюю измененную таблицу, можно выполнить следующий SQL-запрос:
SELECT relname FROM pg_stat_last_operation INNER JOIN pg_stat_all_tables ON relation_id = pg_stat_all_tables.relid WHERE last_operation_timestamp >= now()::DATE ORDER BY last_operation_timestamp DESC LIMIT 1;
Этот запрос связывает таблицу pg_stat_last_operation с таблицей pg_stat_all_tables при помощи идентификатора таблицы. Затем он выбирает только те записи, последняя операция которых была выполнена сегодня. Записи сортируются по временной метке операции в порядке убывания, а затем выбирается только первая запись с помощью оператора LIMIT 1.
Результатом этого запроса будет название последней измененной таблицы в базе данных.