Two search modes are available:
- 'at least one word' mode
The search returns all the documents whose title contains at least one of the word specified in the search string. The search is case-insensitive.
- 'all words' mode
The search returns all the documents whose title contains all the word specified in the search string. The search is case-insensitive.
Three search modes are available:
- Integral mode
This is a natural language search, that interprets the search string as a phrase in natural human language (a phrase in free text). There are no special operators. The stopword list applies. In addition, words that are present in more than 50% of the rows are considered common and do not match. Full-text searches are natural language searches if no modifier is given.
- Extended mode
The extended mode is a modification of the integral mode. The search string is used to perform a natural language search. Then words from the most relevant rows returned by the search are added to the search string and the search is done again. The query returns the rows from the second search.
- Boolean mode
A boolean search interprets the search string using the rules of a special query language. The string contains the words to search for. It can also contain operators that specify requirements such that a word must be present or absent in matching rows, or that it should be weighted higher or lower than usual. Common words such as 'some' or 'then' are stopwords and do not match if present in the search string.
The following operators are supported:
A leading plus sign indicates that this word must be present in each row that is returned.
A leading minus sign indicates that this word must not be present in any of the rows that are returned.
Note: The - operator acts only to exclude rows that are otherwise matched by other search terms. Thus, a boolean-mode search that contains only terms preceded by - returns an empty result. It does not return 'all rows except those containing any of the excluded terms'.
- (no operator)
By default (when neither + nor - is specified) the word is optional, but the rows that contain it are rated higher.
- > <
These two operators are used to change a word's contribution to the relevance value that is assigned to a row. The > operator increases the contribution and the < operator decreases it.
- ( )
Parentheses group words into subexpressions. Parenthesized groups can be nested.
A leading tilde acts as a negation operator, causing the word's contribution to the row's relevance to be negative. This is useful for marking 'noise' words. A row containing such a word is rated lower than others, but is not excluded altogether, as it would be with the - operator.
The asterisk serves as the truncation (or wildcard) operator. Unlike the other operators, it should be appended to the word to be affected. Words match if they begin with the word preceding the * operator.
A phrase that is enclosed within double quote ('"') characters matches only rows that contain the phrase literally, as it was typed. If the phrase contains no words that are in the index, the result is empty. For example, if all words are either stopwords or shorter than the minimum length of indexed words, the result is empty.