user373201
user373201

Reputation: 11425

postgres full text search like operator

what is the query to use to search for text that matches the like operator.

I am asking about full text search query, which is of the form

 SELECT * FROM eventlogging WHERE description_tsv @@ plainto_tsquery('mess');   

I want results with "message" as well but right not it does not return anything

Upvotes: 8

Views: 16394

Answers (2)

user330315
user330315

Reputation:

If I read the description in the manual correctly, you'll need to use to_tsquery() instead of plainto_tsquery together with a wildcard to allow prefix matching:

SELECT * 
FROM eventlogging 
WHERE description_tsv @@ to_tsquery('mess:*');

Upvotes: 23

Michael Irigoyen
Michael Irigoyen

Reputation: 22947

You can use LIKE for exact case matches or ILIKE for case insensitive. Use the % as your wildcard.

This will match anything with 'SomeThing' in it (case sensitive).

SELECT * FROM table WHERE name LIKE '%SomeThing%'

This will match anything ending with "ing" (case insensitive).

SELECT * FROM table WHERE name ILIKE '%ing'

Upvotes: -7

Related Questions