# Index Table

[Generating the index table →](/index-table/generating-the-index-table.md)

## Index Table

![](http://i.imgur.com/yOP8noZ.png)

Plugin version 4.5. introduces index table search engine. Index table is used to make the database queries faster and lighter. The index table must be generated before use.

{% embed url="<https://www.youtube.com/watch?v=ZgjcYkx7jtk>" %}

{% embed url="<https://youtu.be/XQmrTlvQcTk>" %}

#### Subchapters - please follow in order

* [Generating the index table](/index-table/generating-the-index-table.md)
* [Enabling index table engine](/index-table/enabling-index-table-engine.md)
* [Index table FAQ](/index-table/index-table-faq.md)

### Pros

* Much **faster lookup** in the database
* **Less database-heavy** operations - every keyword operation uses the table indexes, therefore no full table lookup, nor temporary tables are needed.
* CAN index **shortcode** contents!
* Indexes selected [PODs](https://wordpress.org/plugins/pods/) custom fields contents, that connect to a **custom table**
* Good for big databases
* Better relevancy calculation

### Cons

* **Can't search for exact matches** - the index table consists of separated keywords with relational and relevancy data. There is no way of determining the sorrounding keywords, therefore exact matching is not possible.
* Can't search word inner parts, only beginnings and endings
  * for example "rat" NOT match "ka**rat**e"
  * but "kar" will match "**kar**ate"
  * and "rate" will match "ka**rate**"
* Has to be configured before use.
* Only one index configuration for every search instance

### Should I use the index table engine?

Short answer, yes, you should. You definitely should if you:

* Want to search shortcode content
* Want to search tags, categories or any terms related to posts
* Custom fields content
* Have a big database of posts

### Which type of content can be indexed?

You can index posts, pages and any custom post type. (products, forums, topics, etc..)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.ajaxsearchpro.com/index-table.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
