日期:2014-05-16  浏览次数:20711 次

数据库查询变慢
以前数据量少的情况下,页面查询很快。现在有几万笔数据了,查询相应的数据很慢,要几十秒才能把数据结果在页面上显示。索引我也加过了,还是没有用。怀疑是sql语句的问题,在数据库里直接查询的结果:显示行 0 - 0 (1 总计, 查询花费 1.6105 秒),请问有无方法优化?请高手支招,谢谢!
SQL code

select * from `barcode_all` where `packageno`= 'CVT120207037'or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= ''or`packageno`= '' group by packageno 



------解决方案--------------------
贴出你的 explain select ...
show index from barcode_all
的结果以供分析。

虽然可以改为 in (... 但仅是视觉上好看,效率不会提高。
------解决方案--------------------
没有用到索引呀
------解决方案--------------------
如果是memory引擎的临时表 则放在内存中
如果是myisam引擎的临时表 放在 show variables like '%tmp%' 目录下