以前数据量少的情况下,页面查询很快。现在有几万笔数据了,查询相应的数据很慢,要几十秒才能把数据结果在页面上显示。索引我也加过了,还是没有用。怀疑是sql语句的问题,在数据库里直接查询的结果:显示行 0 - 0 (1 总计, 查询花费 1.6105 秒),请问有无方法优化?请高手支招,谢谢!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
解决方案 »
- mysql error: Access denied for user 'root'@'localhost' (using password: Yes)
- 寻求:关于postgresql创建用户的问题
- 有没有sql语句可以做简单的计算
- mysql 大数据量问题
- 有没有mysql资料或者是网站介绍啊
- mysql中的定义外键语句~!
- 救急,关于mysql不能正确启动的问题,请指教!
- MySQL运行语句报错
- mysql 用 EXISTS 查不到信息时为什么会很慢?
- mysql创建触发器时出现错误,但是找了好久不知到错误在哪
- wwwwb,WWWWA你们看看这个情况
- mysql服务器断电,再重启的时候,经常发生无法正常打开的情况,应该怎么避免?
show index from barcode_all
的结果以供分析。虽然可以改为 in (... 但仅是视觉上好看,效率不会提高。
1 PRIMARY <derived2> ALL NULL NULL NULL NULL 41712 Using where; Using temporary; Using filesort
2 DERIVED barcode_2d_temp ALL NULL NULL NULL NULL 1
3 UNION barcode_2d ALL NULL NULL NULL NULL 41426
4 UNION barcode_2d_n ALL NULL NULL NULL NULL 417
5 UNION barcode_2d_sep ALL NULL NULL NULL NULL 80
6 UNION barcode_2d_sep_temp ALL NULL NULL NULL NULL 1
NULL UNION RESULT <union2,3,4,5,6> ALL NULL NULL NULL NULL NULL
+----+--------------+---------------------+------+---------------+------+-------
--+------+-------+-------+
| id | select_type | table | type | possible_keys | key | key_le
n | ref | rows | Extra |
+----+--------------+---------------------+------+---------------+------+-------
--+------+-------+-------+
| 1 | PRIMARY | <derived2> | ALL | NULL | NULL | NULL
| NULL | 41712 | |
| 2 | DERIVED | barcode_2d_temp | ALL | NULL | NULL | NULL
| NULL | 1 | |
| 3 | UNION | barcode_2d | ALL | NULL | NULL | NULL
| NULL | 41426 | |
| 4 | UNION | barcode_2d_n | ALL | NULL | NULL | NULL
| NULL | 417 | |
| 5 | UNION | barcode_2d_sep | ALL | NULL | NULL | NULL
| NULL | 80 | |
| 6 | UNION | barcode_2d_sep_temp | ALL | NULL | NULL | NULL
| NULL | 1 | |
| NULL | UNION RESULT | <union2,3,4,5,6> | ALL | NULL | NULL | NULL
| NULL | NULL | |
+----+--------------+---------------------+------+---------------+------+-------
--+------+-------+-------+
7 rows in set (4.78 sec)请问怎么视图怎么带索引?
`barcode_2d_temp`
`barcode_2d`
`barcode_2d_n`
`barcode_2d_sep`
`barcode_2d_sep_temp`是否有索引packageno
有索引,谢谢斑竹!我已经用临时表搞定。不过请问mysql临时表的临时文件存在哪个路径下?windows系统。
如果是myisam引擎的临时表 放在 show variables like '%tmp%' 目录下