|  array_to_tsvector(text[]) →tsvector  Converts an array of text strings to a tsvector. The given strings are used as lexemes as-is, without further processing. Array elements must not be empty strings orNULL. array_to_tsvector('{fat,cat,rat}'::text[])→'cat' 'fat' 'rat'
 | 
|  get_current_ts_config( ) →regconfig  Returns the OID of the current default text search configuration (as set by default_text_search_config).  get_current_ts_config()→english
 | 
|  length(tsvector) →integer  Returns the number of lexemes in the tsvector. length('fat:2,4 cat:3 rat:5A'::tsvector)→3
 | 
|  numnode(tsquery) →integer  Returns the number of lexemes plus operators in the tsquery. numnode('(fat & rat) | cat'::tsquery)→5
 | 
|  plainto_tsquery( [configregconfig, ]querytext) →tsquery  Converts text to a tsquery, normalizing words according to the specified or default configuration. Any punctuation in the string is ignored (it does not determine query operators). The resulting query matches documents containing all non-stopwords in the text. plainto_tsquery('english', 'The Fat Rats')→'fat' & 'rat'
 | 
|  phraseto_tsquery( [configregconfig, ]querytext) →tsquery  Converts text to a tsquery, normalizing words according to the specified or default configuration. Any punctuation in the string is ignored (it does not determine query operators). The resulting query matches phrases containing all non-stopwords in the text. phraseto_tsquery('english', 'The Fat Rats')→'fat' <-> 'rat'
 phraseto_tsquery('english', 'The Cat and Rats')→'cat' <2> 'rat'
 | 
|  websearch_to_tsquery( [configregconfig, ]querytext) →tsquery  Converts text to a tsquery, normalizing words according to the specified or default configuration. Quoted word sequences are converted to phrase tests. The word “or” is understood as producing an OR operator, and a dash produces a NOT operator; other punctuation is ignored. This approximates the behavior of some common web search tools. websearch_to_tsquery('english', '"fat rat" or cat dog')→'fat' <-> 'rat' | 'cat' & 'dog'
 | 
|  querytree(tsquery) →text  Produces a representation of the indexable portion of a tsquery. A result that is empty or justTindicates a non-indexable query. querytree('foo & ! bar'::tsquery)→'foo'
 | 
|  setweight(vectortsvector,weight"char") →tsvector  Assigns the specified weightto each element of thevector. setweight('fat:2,4 cat:3 rat:5B'::tsvector, 'A')→'cat':3A 'fat':2A,4A 'rat':5A
 | 
|  setweight(vectortsvector,weight"char",lexemestext[]) →tsvector  Assigns the specified weightto elements of thevectorthat are listed inlexemes. The strings inlexemesare taken as lexemes as-is, without further processing. Strings that do not match any lexeme invectorare ignored. setweight('fat:2,4 cat:3 rat:5,6B'::tsvector, 'A', '{cat,rat}')→'cat':3A 'fat':2,4 'rat':5A,6A
 | 
|  strip(tsvector) →tsvector  Removes positions and weights from the tsvector. strip('fat:2,4 cat:3 rat:5A'::tsvector)→'cat' 'fat' 'rat'
 | 
|  to_tsquery( [configregconfig, ]querytext) →tsquery  Converts text to a tsquery, normalizing words according to the specified or default configuration. The words must be combined by validtsqueryoperators. to_tsquery('english', 'The & Fat & Rats')→'fat' & 'rat'
 | 
|  to_tsvector( [configregconfig, ]documenttext) →tsvector  Converts text to a tsvector, normalizing words according to the specified or default configuration. Position information is included in the result. to_tsvector('english', 'The Fat Rats')→'fat':2 'rat':3
 | 
| to_tsvector( [configregconfig, ]documentjson) →tsvector
 to_tsvector( [configregconfig, ]documentjsonb) →tsvector
  Converts each string value in the JSON document to a tsvector, normalizing words according to the specified or default configuration. The results are then concatenated in document order to produce the output. Position information is generated as though one stopword exists between each pair of string values. (Beware that “document order” of the fields of a JSON object is implementation-dependent when the input isjsonb; observe the difference in the examples.) to_tsvector('english', '{"aa": "The Fat Rats", "b": "dog"}'::json)→'dog':5 'fat':2 'rat':3
 to_tsvector('english', '{"aa": "The Fat Rats", "b": "dog"}'::jsonb)→'dog':1 'fat':4 'rat':5
 | 
|  json_to_tsvector( [configregconfig, ]documentjson,filterjsonb) →tsvector  jsonb_to_tsvector( [configregconfig, ]documentjsonb,filterjsonb) →tsvector  Selects each item in the JSON document that is requested by the filterand converts each one to atsvector, normalizing words according to the specified or default configuration. The results are then concatenated in document order to produce the output. Position information is generated as though one stopword exists between each pair of selected items. (Beware that “document order” of the fields of a JSON object is implementation-dependent when the input isjsonb.) Thefiltermust be ajsonbarray containing zero or more of these keywords:"string"(to include all string values),"numeric"(to include all numeric values),"boolean"(to include all boolean values),"key"(to include all keys), or"all"(to include all the above). As a special case, thefiltercan also be a simple JSON value that is one of these keywords. json_to_tsvector('english', '{"a": "The Fat Rats", "b": 123}'::json, '["string", "numeric"]')→'123':5 'fat':2 'rat':3
 json_to_tsvector('english', '{"cat": "The Fat Rats", "dog": 123}'::json, '"all"')→'123':9 'cat':1 'dog':7 'fat':4 'rat':5
 | 
|  ts_delete(vectortsvector,lexemetext) →tsvector  Removes any occurrence of the given lexemefrom thevector. Thelexemestring is treated as a lexeme as-is, without further processing. ts_delete('fat:2,4 cat:3 rat:5A'::tsvector, 'fat')→'cat':3 'rat':5A
 | 
| ts_delete(vectortsvector,lexemestext[]) →tsvector
  Removes any occurrences of the lexemes in lexemesfrom thevector. The strings inlexemesare taken as lexemes as-is, without further processing. Strings that do not match any lexeme invectorare ignored. ts_delete('fat:2,4 cat:3 rat:5A'::tsvector, ARRAY['fat','rat'])→'cat':3
 | 
|  ts_filter(vectortsvector,weights"char"[]) →tsvector  Selects only elements with the given weightsfrom thevector. ts_filter('fat:2,4 cat:3b,7c rat:5A'::tsvector, '{a,b}')→'cat':3B 'rat':5A
 | 
|  ts_headline( [configregconfig, ]documenttext,querytsquery[,optionstext] ) →text  Displays, in an abbreviated form, the match(es) for the queryin thedocument, which must be raw text not atsvector. Words in the document are normalized according to the specified or default configuration before matching to the query. Use of this function is discussed in Section 12.3.4, which also describes the availableoptions. ts_headline('The fat cat ate the rat.', 'cat')→The fat <b>cat</b> ate the rat.
 | 
| ts_headline( [configregconfig, ]documentjson,querytsquery[,optionstext] ) →text
 ts_headline( [configregconfig, ]documentjsonb,querytsquery[,optionstext] ) →text
  Displays, in an abbreviated form, match(es) for the querythat occur in string values within the JSONdocument. See Section 12.3.4 for more details. ts_headline('{"cat":"raining cats and dogs"}'::jsonb, 'cat')→{"cat": "raining <b>cats</b> and dogs"}
 | 
|  ts_rank( [weightsreal[], ]vectortsvector,querytsquery[,normalizationinteger] ) →real  Computes a score showing how well the vectormatches thequery. See Section 12.3.3 for details. ts_rank(to_tsvector('raining cats and dogs'), 'cat')→0.06079271
 | 
|  ts_rank_cd( [weightsreal[], ]vectortsvector,querytsquery[,normalizationinteger] ) →real  Computes a score showing how well the vectormatches thequery, using a cover density algorithm. See Section 12.3.3 for details. ts_rank_cd(to_tsvector('raining cats and dogs'), 'cat')→0.1
 | 
|  ts_rewrite(querytsquery,targettsquery,substitutetsquery) →tsquery  Replaces occurrences of targetwithsubstitutewithin thequery. See Section 12.4.2.1 for details. ts_rewrite('a & b'::tsquery, 'a'::tsquery, 'foo|bar'::tsquery)→'b' & ( 'foo' | 'bar' )
 | 
| ts_rewrite(querytsquery,selecttext) →tsquery
  Replaces portions of the queryaccording to target(s) and substitute(s) obtained by executing aSELECTcommand. See Section 12.4.2.1 for details. SELECT ts_rewrite('a & b'::tsquery, 'SELECT t,s FROM aliases')→'b' & ( 'foo' | 'bar' )
 | 
|  tsquery_phrase(query1tsquery,query2tsquery) →tsquery  Constructs a phrase query that searches for matches of query1andquery2at successive lexemes (same as<->operator). tsquery_phrase(to_tsquery('fat'), to_tsquery('cat'))→'fat' <-> 'cat'
 | 
| tsquery_phrase(query1tsquery,query2tsquery,distanceinteger) →tsquery
  Constructs a phrase query that searches for matches of query1andquery2that occur exactlydistancelexemes apart. tsquery_phrase(to_tsquery('fat'), to_tsquery('cat'), 10)→'fat' <10> 'cat'
 | 
|  tsvector_to_array(tsvector) →text[]  Converts a tsvectorto an array of lexemes. tsvector_to_array('fat:2,4 cat:3 rat:5A'::tsvector)→{cat,fat,rat}
 | 
|  unnest(tsvector) →setof record(lexemetext,positionssmallint[],weightstext)  Expands a tsvectorinto a set of rows, one per lexeme. select * from unnest('cat:3 fat:2,4 rat:5A'::tsvector)→
 
 lexeme | positions | weights
--------+-----------+---------
 cat    | {3}       | {D}
 fat    | {2,4}     | {D,D}
 rat    | {5}       | {A}
 |