Dear Min, ..
sql>update people set id = -2 where name='Phil Ivey'; 1 affected row
sql>select * from people; +------+-----------------------------+ | id | name | +======+=============+ | 1 | Michael Jordan | | 2 | Lionel Messi | | -1 | Phil Ivey | +------+-----------------------------+
..
It is not what we would expect, isn't it? My MonetDB version is v5.18.3
I could also reproduce your problem on MonetDB version 5.19.0 and SQL version 2.37.0, where I found that the BAT storage code for updating would not save data to updated columns if the same row was already updated in the same transaction. The attached patch (to be applied to the SQL module) fixes this for me. Maybe it also applies to the version you are running. Best regards, Isidor