最近在写数据库表,在执行MySQL的时候,发现速度很慢。经过一番调试,发现给数据加上单引号以后,速度变得非常快,所以在这里总结一下。
先看看SQL:SELECT tel
FROM user
WHERE type
IN (‘user’, ‘owner’);
在这个SQL中,用反单引号(`)去标注表名、字段名,用单引号(‘)去标注参数。
反单引号的作用是,当表名、字段名为一些保留字的时候,如果不用反单引号标注,执行SQL的时候会报错。单引号经常有人忘记加,在数据量较少的情况下,一般来说没有问题,但是在数据量大的情况下,而你所查询的字段,是个varchar之类的字符字段,那就会严重影响速度。按照网上的说法,如果不加单引号,索引会失效,并且数据不会优先作为字符来判断,因此在查找对比的过程中,会有很大的影响。