Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

🔤 Phrase Matching ("word1 word2")

This is used to search for exact phrases, with:

  • Exact order

  • No extra words in between

  • No variations

Example:

Code Block
MATCH(content) AGAINST('"gene therapy" IN BOOLEAN MODE) 

...

Phrase matching is strict — it's looking for gene immediately followed by therapy.

...

🧲 Proximity Matching ("word1 word2" @N)

This is used to search for all words appearing close together, regardless of order, and allows for flexibility in between.

Example:

Code Block
MATCH(content) AGAINST('"gene therapy" @3' IN BOOLEAN MODE) 

...

So while "gene therapy" (phrase) only matches that exact sequence, "gene therapy" @3 allows them to be near each other in any order and with some wiggle room between them.

...

🆚 Summary Comparison

Feature

Phrase Match
("word1 word2")

Proximity Match
("word1 word2" @N)

Word Order Matters

✅ Yes

❌ No

Must be Adjacent

✅ Yes

❌ No (within N words)

Allows Intervening Words

❌ No

✅ Yes (up to N-1 words)

Use Case

Exact matches (e.g., quotes)

Conceptual closeness

Flexibility

❌ Rigid

✅ Flexible

Available in BOOLEAN MODE?

✅ Yes

✅ Yes (InnoDB only)

...

🤔 When to use which?

  • Use phrase matching when you're looking for exact quotations or tight phrases (e.g., "climate change", "artificial intelligence").

  • Use proximity search when you're more interested in conceptual relevance, especially in large or noisy text fields (e.g., medical records, article abstracts, etc.).

...

References: