有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,运行效率哪个更高?
自己测试过,花费的时间都是一样的,但总觉得应该是第一句效率更高些
`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,运行效率哪个更高?
自己测试过,花费的时间都是一样的,但总觉得应该是第一句效率更高些
你是如何测试的? 测试验证一个结果,需要设计非常科学的测试方法。排除测试过程中所有其它因素的干扰。
所以有差的话, 只差在解析语句上
第三条,‘9999’会被转换为9999,对效率影响应该很小。