Products
Polskie wyszukiwanie pełnotekstowe
Słownik sjp.pl dla Postgres FTS: odmiana, stop-słowa, wariant bez ogonków, kolumna tsvector z indeksem GIN.
This page is available in Polish only for now. The commands, code and API calls below are the same in every language — an English translation is on its way. Open the Polish page
Postgres nie ma wbudowanej konfiguracji wyszukiwania dla polskiego. HostBase dostarcza słownik hunspell z sjp.pl; instalacja w Integracje → Polskie wyszukiwanie tworzy:
public.polish_ispell— słownik ispell (formy podstawowe i stop-słowa),public.polish— konfiguracja: słownik + fallbacksimpledla słów spoza słownika,public.polish_unaccent— bez odmiany, ignoruje ogonki („zolw” = „żółw”).
select to_tsvector('public.polish', 'Koty biegały po zielonych łąkach');
Kolumna wyszukiwania
alter table artykuly add column fts tsvector generated always as (
setweight(to_tsvector('public.polish', coalesce(tytul, '')), 'A') ||
setweight(to_tsvector('public.polish', coalesce(tresc, '')), 'B')
) stored;
create index on artykuly using gin (fts);
Zapytania
const { data } = await supabase
.from("artykuly")
.select("id, tytul")
.textSearch("fts", "zielone łąki -miasto", { type: "websearch", config: "polish" });
W SQL: websearch_to_tsquery('public.polish', 'zielone łąki'), ranking ts_rank_cd, fragmenty z podświetleniem ts_headline. Plac zabaw w panelu pokazuje wyniki i wygenerowane tsquery.