Postgres fuldtekstsøgning er lidt anderledes end MySQL fuldtekstsøgning. Det har mange flere muligheder, men det kan være lidt sværere at få det til at fungere, som du kan lide det.
Dette dokument fortæller dig, hvordan du rangerer dine søgeresultater, men jeg anbefaler stærkt, at du læser hele fuldtekstafsnittet fra manualen for at få en idé om, hvad du kan gøre med det:http://www.postgresql.org/docs/current/interactive/textsearch-controls.html#TEXTSEARCH-RANKING
Grundlæggende ville det, der svarer til din forespørgsel, være dette:
SELECT pictures.id, ts_rank_cd(textsearch, 'phrase') AS score
FROM pictures
ORDER BY score DESC
Som du kan se, bruger dette textsearch
hvilket er noget du selv bliver nødt til at definere. For den korte version, læs:http://www.postgresql. org/docs/current/interactive/textsearch-tables.html
Forespørgslen er grundlæggende meget enkel:
SELECT pictures.id, ts_rank_cd(to_tsvector('english', pictures.title), 'phrase') AS score
FROM pictures
ORDER BY score DESC
Men jeg vil stærkt anbefale også at tilføje indekser:
CREATE INDEX pictures_title ON pictures USING gin(to_tsvector('english', title));