Mysql
 sql >> Database >  >> RDS >> Mysql

Query per trovare le tabelle modificate nell'ultima ora

MySQL 5.x può farlo tramite il database INFORMATION_SCHEMA. Questo database contiene informazioni su tabelle, viste, colonne, ecc.

SELECT * 
FROM `INFORMATION_SCHEMA`.`TABLES`
WHERE 
    DATE_SUB(NOW(), INTERVAL 1 HOUR) < `UPDATE_TIME`

Restituisce tutte le tabelle che sono state aggiornate (UPDATE_TIME) nell'ultima ora. Puoi anche filtrare per nome del database (colonna TABLE_SCHEMA).

Una query di esempio:

SELECT 
    CONCAT(`TABLE_SCHEMA`, '.', `TABLE_NAME`) AS `Table`, 
    UPDATE_TIME AS `Updated`
FROM `INFORMATION_SCHEMA`.`TABLES`
WHERE
    DATE_SUB(NOW(), INTERVAL 3 DAY) < `UPDATE_TIME`
    AND `TABLE_SCHEMA` != 'INFORMATION_SCHEMA'
    AND `TABLE_TYPE` = 'BASE TABLE';