SQL性能(REPLACE/SELECT+INSERT+UPDATE/INSERT...ON DUPLICATE KEY)
时间:2011-06-02
来源:互联网
1)
IF (SELECT * FROM ipstats WHERE ip='192.168.0.1') {
UPDATE ipstats SET value=xxx WHERE ip='192.168.0.1';
} else {
INSERT INTO ipstats (ip, value) VALUES ('192.168.0.1', xxx);
}
2)
INSERT INTO ipstats VALUES('192.168.0.1', xxx) ON DUPLICATE KEY UPDATE value=xxx;
3)
REPLACE INTO ipstats (ip, value) VALUES ('192.168.0.1', xxx);
有经验的人来说说,反正从我的经验来说在5.5以上版本,REPLACE INTO是性能很差的,系统负载超10,转成1的方式,系统负载直接将到1-2之间。
IF (SELECT * FROM ipstats WHERE ip='192.168.0.1') {
UPDATE ipstats SET value=xxx WHERE ip='192.168.0.1';
} else {
INSERT INTO ipstats (ip, value) VALUES ('192.168.0.1', xxx);
}
2)
INSERT INTO ipstats VALUES('192.168.0.1', xxx) ON DUPLICATE KEY UPDATE value=xxx;
3)
REPLACE INTO ipstats (ip, value) VALUES ('192.168.0.1', xxx);
有经验的人来说说,反正从我的经验来说在5.5以上版本,REPLACE INTO是性能很差的,系统负载超10,转成1的方式,系统负载直接将到1-2之间。
作者: M1234 发布时间: 2011-06-02
REPLACE 是先DELETE再INSERT
应该是INSERT INTO ipstats VALUES('192.168.0.1', xxx) ON DUPLICATE KEY UPDATE value=xxx;这个比较快。 但没有具体测试过。
应该是INSERT INTO ipstats VALUES('192.168.0.1', xxx) ON DUPLICATE KEY UPDATE value=xxx;这个比较快。 但没有具体测试过。
作者: ACMAIN_CHM 发布时间: 2011-06-02
以前在CSDN有讨论过,但是在ACCESS数据库上,MYSQL上你可以自己测试一下然后分享一下结果。
http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/23/4210633.aspx
ACCESS的真假:二、检查记录有无再insert 或 update 比 不管有无直接 delete 再 insert 快吗?
http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/23/4210633.aspx
ACCESS的真假:二、检查记录有无再insert 或 update 比 不管有无直接 delete 再 insert 快吗?
作者: ACMAIN_CHM 发布时间: 2011-06-02
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28