我正在使用MySQL作为数据库.我需要更新一些数据.但是数据可能没有更改,因此在这种情况下我可能不需要更新行.
我想知道哪一个更好(性能明智):
a)搜索表以确定数据是否已更改.例如,我可以通过主键进行搜索,然后查看剩余字段的值是否已更改.如果是,则继续执行update语句;否则,将其保留.
b)直接使用UPDATE查询.如果数据没有变化,MySQL将自动忽略它,而不处理更新数据.
因此,在这种情况下哪个会更好.
解决方法:
从MySQL manual开始:
If you set a column to the value it currently has, MySQL notices this
and does not update it.
因此,节省您的等待时间,然后将任务留给MySQL.它甚至可以告诉您实际受影响的行数.