可以通过强制指定index的方法优化find
MySQL doesn’t always pick the right index for your queries. Hence, sometimes you must tell it which index to use. Consider the example :
Activity.all(:conditions => ['created_at >= ? AND country_id = ?', 10.days.ago, 79])
Running EXPLAIN on the above query :
EXPLAIN SELECT * FROM `activities` WHERE (created_at >= '2009-07-27 12:58:44' AND country_id = 79);
Possible keys : index_activities_on_created_at,index_activities_on_created_at_and_country_id
Using the key : index_activities_on_created_at
As you can see, even though the table has index on both the fields involved in the query – index_activities_on_created_at_and_country_id, MySQL still uses index_activities_on_created_at. You can explicitly ask MySQL to use the index you want by supplying USE INDEX(
http://dev.mysql.com/doc/refman/5.1/en/index-hints.html)
SELECT * FROM `activities` USE INDEX(index_activities_on_created_at_and_country_id)
WHERE (created_at >= '2009-07-27 12:58:44' AND country_id = 79);
Active Record does not have any finder option to specify the index hint. Hence the solution is to exploit the :from option :
from = "#{quoted_table_name} USE INDEX(index_activities_on_created_at_and_country_id)"
Activity.all(:from => from,
:conditions => ['created_at >= ? AND country_id = ?', 10.days.ago, 79])
分享到:
相关推荐
"发现者",这个项目可能是一个关于Web开发的开源工具或框架,命名为"finders"。考虑到标签为"HTML",我们可以推测它可能与HTML相关的搜索、解析或者内容提取有关。在Web开发中,HTML(HyperText Markup Language)是...
nokogiri_bang_finders 这颗宝石说“Nokogiri,如果你找不到我想要的 XML,请大喊大叫。” 例如: doc = Nokogiri :: XML ( ...# with nokogiri_bang_finders doc . at! ( 'robot' ) . content # Nokogiri::XML
200, SICK LMS-100, and Hokuyo URG 04-LX laser-range finders, control of the pan-tilt-zoom camera or pan-tilt unit, Pioneer Gripper and Arm, and more. (Some other devices are supported by separate ...
寻找者守护者背景和概述Finders Keepers是一个利用MERN的网络应用程序,该应用程序允许用户发布免费赠品,供其他人领取。 拥有帐户的用户可以创建他们想要免费赠送的物品图片的帖子。 因果用户(没有帐户的用户)将...
随着项目的进展,开发者们已经创建了一系列的类,包括用于封装配置/时程信息的类、处理者类、Finders以及TCandidate类,用于封装目标文件。通过TDD(Test Driven Development)测试方法验证了这些类的正确性和功能。...
版本号:OpenCV-4.1.1、opencv_contrib-4.1.1、Visual Studio 2015。 基于OpenCV4.1.1帮助文档内Examples的stitching_detail.cpp改编。 包括提取特征点、特征点匹配、特征点提纯、预估相机参数、全面细化相机参数、...
index modules | next | Python » 3.6.5 Documentation » Python Documentation contents What’s New in Python What’s New In Python 3.6 Summary – Release highlights New Features PEP 498: Formatted ...
8. **Finders**:虽然`ActiveAttr`不像ActiveRecord那样有完整的查询接口,但它提供了基础的查找方法,如`find`和`find_by`。 在`active_attr-master`这个压缩包中,通常会包含`ActiveAttr`库的源码文件,包括`.rb`...
magento-finder ##注意:此工具目前正在开发中 Magento Finder 扩展了 Symfony Finder 组件并查找特殊的 Magento 文件和目录,这些文件和目录可以是: 模块; 模型、控制器、助手等。 更进一步,它会在模块或...
在Python的世界里,PyPI(Python Package Index)是官方的第三方Python库分发平台,它为开发者提供了发布、查找和安装Python软件包的便利。"django-libsass-0.1.tar.gz" 是一个从PyPI官网下载的资源,它属于Python库...
然后在项目的 `settings.py` 中进行配置,将 `django_sass_processor` 添加到 `INSTALLED_APPS` 列表中,并设置 `STATICFILES_FINDERS` 包含 `SassFinder`: ```python INSTALLED_APPS = [ # ... 'django_sass_...
班古Bangoo是Django之上的内容管理系统。安装从INSTALLED_APPS及其相关的所有内容(例如: urls.py import)中删除...FINDERS设置为: STATICFILES_FINDERS = ( 'bangoo.theming.staticfiles.finders.FileSystemFind
'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'sass_processor.finders.CssFinder', ] SASS_PROCESSOR_ROOT = os.path.join(BASE_DIR, 'static') SASS_PROCESSOR_INCLUDE_DIRS = ['path/to/your/...
在Python的开发环境中,PyPI(Python Package Index)是最重要的资源库,它提供了大量的第三方Python模块和库,方便开发者下载和安装。`django_manifest_loader`是一个在PyPI上发布的Python库,专门用于解决Django...
aes-finder, 在运行过程中,用于查找AES密钥的实用程序 AES查找器在运行进程内存中查找AES键的工具。 适用于 128,192和 256-bit 键。用法在 Visual Studio 2013中打开 aes-finder.sln 解决方案以编译源代码。...
安装安装django-bower软件包: pip install django-bower 在您的设置中将django-bower添加到INSTALLED_APPS: 'djangobower' , 将staticfinder添加到STATICFILES_FINDERS: 'djangobower.finders.BowerFinder' , ...
7. Range finders:Range finders是一种基于激光雷达的测距设备,能够获取物体的距离信息。 8. Tightly controlled domains:Tightly controlled domains是一种应用立体视觉(激光雷达)技术的领域,例如工业机器人...
'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'sass_processor.finders.CssFinder', ] # Django Sass 编译后 CSS 的存放位置 SASS_PROCESSOR_ROOT = os.path.join(BASE_DIR, 'static', 'css')...