MySQL:如何确定最后一次在MySQL中访问一行的时间?

MySQL:如何确定最后一次在MySQL中访问一行的时间?,mysql,Mysql,我插入行在一个巨大的数据库(数百万条记录)使用插入忽略到。。。关于重复键更新列IF(语句)技术。我还记录每次运行时的新行数、更新行数和未更改行数 我有一列'last_accessed',类型为'ON UPDATE CURRENT_TIMESTAMP'。但是,显然,当mysql\u受影响的\u行为零时,此列不会更新,而仅当它为1(插入)或2(重复密钥更新)时才会更新 如果我在重复密钥更新中更新它,我将无法区分更新的行和未更改的行 手动更新最后访问的行是一项非常密集的操作,我想避免它 我可以用什么技

我插入行在一个巨大的数据库(数百万条记录)使用插入忽略到。。。关于重复键更新列IF(语句)技术。我还记录每次运行时的新行数、更新行数和未更改行数

我有一列'last_accessed',类型为'ON UPDATE CURRENT_TIMESTAMP'。但是,显然,当mysql\u受影响的\u行为零时,此列不会更新,而仅当它为1(插入)或2(重复密钥更新)时才会更新

如果我在重复密钥更新中更新它,我将无法区分更新的行和未更改的行

手动更新最后访问的行是一项非常密集的操作,我想避免它


我可以用什么技巧来解决我的问题?另外,是否有一个mysql查询(类似于mysql\u insert\u id())将返回最后访问的行id(无论操作如何)?

您可以创建一个存储过程来返回数据集,并在调用时更新该字段。我想你最好这样做