--- title: Match description: The query builder version of the match query canonical: https://docs.paradedb.com/documentation/query-builder/match --- Highlighting is not supported for `pdb.match` if `distance` is greater than zero. For most use cases, we recommend using the [match](/documentation/full-text/match) query instead. Under the hood, the [match](/documentation/full-text/match) conjunction and disjunction operators get rewritten to this query builder function. This function exposes a few advanced configuration options like the ability to use a custom tokenizer. ```sql SELECT description, rating, category FROM mock_items WHERE description @@@ pdb.match('running shoes'); ```
The query to match against. This query is automatically tokenized in the same way as the field on the left-hand side of `@@@`. If greater than zero, fuzzy matching is applied. Configures the maximum Levenshtein distance (i.e. single character edits) allowed to consider a term in the index as a match for the query term. Maximum value is `2`. When set to `true` and fuzzy matching is enabled, transpositions (swapping two adjacent characters) as a single edit in the Levenshtein distance calculation, while `false` considers it two separate edits (a deletion and an insertion). When set to `true` and fuzzy matching is enabled, the initial substring (prefix) of the query term is exempted from the fuzzy edit distance calculation, while false includes the entire string in the calculation. When set to `true`, **all** tokens of the query have to match in order for a document to be considered a match. For instance, the query `running shoes` is by default executed as `running OR shoes`, but setting `conjunction_mode` to `true` executes it as `running AND shoes`. ## Fuzzy Matching When `distance` is set to a positive integer, fuzzy matching is applied. This allows `match` to tolerate typos in the query string. ```sql SELECT description, rating, category FROM mock_items WHERE description @@@ pdb.match('ruining shoez', distance => 2); ``` ## Conjunction Mode By default, `match` constructs an `OR` boolean query from the query string's tokens. For instance, the query `running shoes` is executed as `running OR shoes`. When set to `true`, `conjunction_mode` constructs an `AND` boolean query instead. ```sql Function Syntax SELECT description, rating, category FROM mock_items WHERE description @@@ pdb.match('running shoes', conjunction_mode => true); ```