mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
Add strict_word_similarity to pg_trgm module
strict_word_similarity is similar to existing word_similarity function but it takes into account word boundaries to compute similarity. Author: Alexander Korotkov Review by: David Steele, Liudmila Mantrova, me Discussion: https://www.postgresql.org/message-id/flat/CY4PR17MB13207ED8310F847CF117EED0D85A0@CY4PR17MB1320.namprd17.prod.outlook.com
This commit is contained in:
@ -90,6 +90,7 @@ gin_extract_query_trgm(PG_FUNCTION_ARGS)
|
||||
{
|
||||
case SimilarityStrategyNumber:
|
||||
case WordSimilarityStrategyNumber:
|
||||
case StrictWordSimilarityStrategyNumber:
|
||||
trg = generate_trgm(VARDATA_ANY(val), VARSIZE_ANY_EXHDR(val));
|
||||
break;
|
||||
case ILikeStrategyNumber:
|
||||
@ -187,8 +188,8 @@ gin_trgm_consistent(PG_FUNCTION_ARGS)
|
||||
{
|
||||
case SimilarityStrategyNumber:
|
||||
case WordSimilarityStrategyNumber:
|
||||
nlimit = (strategy == SimilarityStrategyNumber) ?
|
||||
similarity_threshold : word_similarity_threshold;
|
||||
case StrictWordSimilarityStrategyNumber:
|
||||
nlimit = index_strategy_get_limit(strategy);
|
||||
|
||||
/* Count the matches */
|
||||
ntrue = 0;
|
||||
@ -282,8 +283,8 @@ gin_trgm_triconsistent(PG_FUNCTION_ARGS)
|
||||
{
|
||||
case SimilarityStrategyNumber:
|
||||
case WordSimilarityStrategyNumber:
|
||||
nlimit = (strategy == SimilarityStrategyNumber) ?
|
||||
similarity_threshold : word_similarity_threshold;
|
||||
case StrictWordSimilarityStrategyNumber:
|
||||
nlimit = index_strategy_get_limit(strategy);
|
||||
|
||||
/* Count the matches */
|
||||
ntrue = 0;
|
||||
|
Reference in New Issue
Block a user