最近在工作中遇到了数据库服务器产生很多读写队列的问题,于是要求大家开始优化我们的SQL语句。
下面是查询quotedata_history表中的code字段的SQL语句,其中code字段的类型是varchar(6)。
以上查询语句是:
SELECT * FROM quotedata_history WHERE `code` = 600000
大家可以看到这个语句的code条件600000是没有加引号的,通过Navicate的截图大家可以看到这次查询花了14.169秒。
以上查询语句是:
SELECT * FROM quotedata_history WHERE `code` = '600000'
大家可以看到这个语句的code条件600000加了引号,通过Navicate的截图大家可以看到这次查询花了0.087秒。
这两个查询的效率相差实在是太大了!