如何在某些表中查找上次修改的行

时间:2014-12-23 08:38:07

标签: mysql

如何查找某些表或数据库中所有表的最后修改行。 我们数据库中的所有表都有(created_at,updated_at datetime列)。

我希望结果集能说出像......

table foo, id=10000, .... (equivalent of select * on that row)

table boo, id=20000, ....

table bar, id=30000, ....

这将帮助我找到某个行修改表的时间。

1 个答案:

答案 0 :(得分:1)

您可以使用

Select * from Tbl where updated_at=max(updated_at)

或者

Select * from Tbl order by updated_at DESC limit 1

如果您只想要最后一行

要在所有表格上运行,请使用:

select concat('Select * from ',table_name,' where updated_at=max(updated_at);')
from information_schema.tables
where table_schema = 'your_db_name'

然后将结果作为查询运行

这可以使用execute command

自动完成