tidb数据库 update一条或多条语句中某个字段,没有被update的字段是否被会查询到缓存中?

如果涉及key的更新(聚簇索引表的主键或非聚簇索引表的rowid)则是获取整行记录先delete(insert标记)再insert。如果不涉及key的更新则直接insert。

其实我们更常用的涉及大批量数据操作的是delete,但是delete也是需要把整行数据都读取到tidb-server中,主要是因为需要同步tidb-binlog和对索引字段的维护,其实这块我感觉是可以优化的只是代价较大。