- Notifications
You must be signed in to change notification settings - Fork59
Closed
Labels
Description
postgres=# CREATE TRIGGER tsvectorupdate postgres-# BEFORE UPDATE OR INSERT ON test_rum postgres-# FOR EACH ROW EXECUTE PROCEDURE tsvector_update_trigger('a', 'pg_catalog.english', 't'); postgres=# INSERT INTO test_rum(t) VALUES ('The situation is most beautiful'); INSERT 0 1 postgres=# INSERT INTO test_rum(t) VALUES ('It is a beautiful'); INSERT 0 1 postgres=# INSERT INTO test_rum(t) VALUES ('It looks like a beautiful place'); INSERT 0 1 postgres=# select * from test_rum ; postgres=# select * from test_rum ; t | a ---------------------------------+---------------------------------------- The situation is most beautiful | 'beauti':5 'situat':2 It is a beautiful | 'beauti':4 It looks like a beautiful place | 'beauti':5 'like':3 'look':2 'place':6 (3 rows) postgres=# WITH tsq as (SELECT to_tsquery('english', 'place|beautiful') AS query) SELECT t, rank FROM (SELECT t, a <=> query AS rank FROM test_rum, tsq WHERE a @@ query = true) matches ORDER BY rank ASC LIMIT 10; t | rank ---------------------------------+--------- It looks like a beautiful place | 8.22467 The situation is most beautiful | 16.4493 It is a beautiful | 16.4493(3 rows)