2

我有一个查询更新 id = X 的行中的列

该列包含一个数字(1 到 3)。

首先检查列的值以确定是否需要更新是否更有效,或者即使列值与要更新的列值相同,还是只更新更好?

如果我先检查值,我是否会为自己节省不必要的写入?

4

1 回答 1

5

您可以检查更新:

update my_table
   set my_column = 'new_value'
 where id = 'X'
   and my_column <> 'new_value'

操作位是 ,and my_column <> 'new_value'如果值相同,它将确保您不会更新它。

好处是您只需查询表一次,并且无需进行不必要的写入。

于 2012-06-02T11:15:15.107 回答