I have a large table (10's of millions of records), I want to be able to filter reasonable quickly, can I create an index on a field to help speed up fitlering?

1 Answer 1


You can submit a Case through the Salesforce Success Community to have Salesforce index a field. Also, assigning a field as an ExternalId will index it.

EDIT: Found the documentation regarding External IDs: Working with Very Large SOQL Queries

  • will indexing the field in general make a different to report performance? is this the best thing to do to speed up filtering?
    – Bartley
    Jan 19, 2015 at 16:11
  • 1
    Yes, it will definitely improve performance for any selective query. I guess it depends on how you're doing your filtering, but typically indexing will always help performance. Jan 19, 2015 at 16:13
  • And if you aren't familiar with what "selective" means in the Salesforce query game, look here: help.salesforce.com/apex/…
    – user735
    Jan 19, 2015 at 17:02
  • This cheatsheet helps tremendesly when working with Large Data Voluume (LDV) objects in Salesforce.com - na1.salesforce.com/help/pdfs/en/… Jan 19, 2015 at 20:33
  • 1
    This document is a must read also if you are dealing with LDV on Force.com. salesforce.com/docs/en/cce/ldv_deployments/… . It covers additional topics like Skinny Tables, etc which you often have to enable for LDV datasets. Jan 19, 2015 at 20:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.