【100分】在别人代码中看到如下注释,大家觉得他说得对吗? //UPDATE LOW_PRIORITY ... SET `A` = `A` + 1 //这种SQL语句的执行性能是很低的,因为数据库要先去获取`A`的值,再去加1 //比 UPDATE LOW_PRIORITY ... SET `A` = 10 要慢很多倍。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没觉得性能会低多少 再说set A=A+1 和set A=10根本就是两种逻辑无法替换 差别不会太大。UPDATE LOW_PRIORITY ... SET `A` = `A` + 1UPDATE LOW_PRIORITY ... SET `A` = 10表面上看,第1个是先读取A的值,再计算一下并更新。这个计算都是很快的运算,几乎可以忽略。实际上第2个,也是要读取A所在的数据块,然后更新。时间上应该没有明显区别。要注意的是,我们倒要看看在A列上建立了索引的情况下,两个更新的时间差距,楼主有兴趣,可以做一下实验。 急!高分求PostgreSQL备份和恢复数据库的SQL语句! mysql安装问题 unpacking of archive failed on。。 black hole MYSQL 选用InnoDB 代替MyISAM 会有什么负面影响? 晕,晕,java调用mysql的存储过程就是出错 100分紧急求助关于JDBC的问题 mysql数据库多表查询 oracle中的unpivot函数,MySQL中怎么代替? 关于Navicat导入数据库后设置主键的问题 SQL 常见面试题解析 求一纠结的sql 优化,在线等 mysql的正则表达式中的*问题
UPDATE LOW_PRIORITY ... SET `A` = `A` + 1
UPDATE LOW_PRIORITY ... SET `A` = 10表面上看,第1个是先读取A的值,再计算一下并更新。这个计算都是很快的运算,几乎可以忽略。
实际上第2个,也是要读取A所在的数据块,然后更新。时间上应该没有明显区别。要注意的是,我们倒要看看在A列上建立了索引的情况下,两个更新的时间差距,楼主有兴趣,可以做一下实验。