The plugin supports the following normal search features:
- Normal wildcard search (plugin default)
- Normal exact search
Normal search performs a standard SQL search, which allows wildcards for CHAR, VARCHAR and TEXT columns.
Normal wildcard versus normal exact search
These search types are basically the same, but there is one important difference. Normal wildcard search performs a wildcard search per default. Normal exact search allows to use wildcards in search arguments, but it does not add wildcards to search arguments on its own.
This is how the plugin processes search arguments (% = wildcard character):
|Search argument||Normal wildcard search||Normal exact search|
|never uses indexes||* uses index (if available)|
Normal exact search will compare a column value with the search argument entered by the user. If the user adds a wildcard (% character), a wildcard search will be performed.
- Wildcards can only be used for CHAR, VARCHAR and TEXT columns. Wildcards searches are not possible on binary, numeric, date and time columns.
Indexes and performance
While the normal wildcard search will usually be the preferred way of searching for most users, it might have a negative effect on performance. The table above shows that for normal wildcard searches a wildcard character will be added to the beginning of every search argument, which eliminates the possibility to use available indexes.
Normal exact search might improve the change to use indexes during a search, while still allowed the use of wildcards. On the downside, this requires the user to at least have a basic understanding of wildcards and how they are used.