这两句SQL运行效率有区别吗?
时间:2011-10-31
来源:互联网
有10w条数据,数据结构如下:
CREATE TABLE IF NOT EXISTS `test` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL DEFAULT '',
PRIMARY KEY (`address_id`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk AUTO_INCREMENT=100000;
1)
SELECT id, name FROM test WHERE id = 9999;
2)
SELECT id, name FROM test WHERE id = '9999';
这两句SQL,运行效率哪个更高?
自己测试过,花费的时间都是一样的,但总觉得应该是第一句效率更高些
CREATE TABLE IF NOT EXISTS `test` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL DEFAULT '',
PRIMARY KEY (`address_id`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk AUTO_INCREMENT=100000;
1)
SELECT id, name FROM test WHERE id = 9999;
2)
SELECT id, name FROM test WHERE id = '9999';
这两句SQL,运行效率哪个更高?
自己测试过,花费的时间都是一样的,但总觉得应该是第一句效率更高些
作者: czhhua28 发布时间: 2011-10-31
`id` mediumint(8)
你的ID是这数字,因此,当然是 WHERE id = 9999;的效率会高,因为MYSQL不需要把 '9999' 转换为数字 9999
你的ID是这数字,因此,当然是 WHERE id = 9999;的效率会高,因为MYSQL不需要把 '9999' 转换为数字 9999
引用自己测试过,花费的时间都是一样的,但总觉得应该是第一句效率更高些
你是如何测试的? 测试验证一个结果,需要设计非常科学的测试方法。排除测试过程中所有其它因素的干扰。 作者: ACMAIN_CHM 发布时间: 2011-10-31
直接在mysql命令行里输入2行sql语句,看运行的时间
作者: czhhua28 发布时间: 2011-10-31
性能一样
作者: rucypli 发布时间: 2011-10-31
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28