我偶然有一天发现一个php查询mongodb速度的问题。
然后想了一天问题查了各种文档然后才发现是一个很简单的小问题,本人也是刚刚学习mongodb的。
接下来说下我遇到的问题,就是查询的时候如果用
find(array('$where' => $js));$where 的查询来查询mongodb数据库 会出现扫描全表的情况,建的索引会不起作用,然后改成数组的形式查询mongodb索引才会起到我们想要的作用。 接下来就看下这两种查询的数据差距。
首先看下我用的第一种查询方式
上面显示:总共18W的数据量 只有762条符合条件的返回,但是它搜索了所有的数据,导致耗时有40秒了!!!!!!!
这是第第二种查询方式:
同意返回762条:但是索引起了作用,并且只需要2秒时间。