javascript和JQuery焦点图和代码特效大全
当前最流行的开源CMS网站系统大全
当前位置:主页 > 数据库 > MySQL >

单引号引发MYSQL的性能损失

来源:IT技术网编辑:秩名发布于:2011-02-26人围观性能MySQL单引号损失

我们用一个字符串类型的字段来作为主键,表面上,这太不如意了,然而,事实也证明这是有用的。问题也就出来了,当在查询语句中对该字段值加上单引号和不加查询耗时相差百倍!

我建立的测试表是这样子的:

CREATE TABLE `foo` (   `key` VARCHAR(10) NOT NULL,   `time` INT(11) NOT NULL,   PRIMARY KEY (`key`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

然后插入30多万条数据,然后执行下面的SQL语句:

SELECT * FROM `foo` WHERE `key` =1293322797

查询花费 0.1288 秒,大约花费这么久的时间,然后,给1293322797加上单引号:

SELECT * FROM `foo` WHERE `key` ='1293322797'

查询花费 0.0009 秒,基本上相差100倍!!!也就是说不加单引号MYSQL性能损失了100倍,很震撼的比例!

后来用EXPLAIN分别跑了一下上面两条语句,

性能,MySQL,单引号,相关的文章
有时间的话来看看IT界的突发事件