Странное поведение ts_headline

From: "Andrey N(dot) Oktyabrski" <ano(at)antora(dot)ru>
To: pgsql-ru-general(at)postgresql(dot)org
Subject: Странное поведение ts_headline
Date: 2008-12-09 11:40:15
Message-ID: 493E591F.1080905@antora.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general

Столкнулись с такой проблемой: при вызове ts_headline с длинным текстом
во втором параметре, подсвечивается только одно найденное слово в
тексте, независимо от того, сколько слов искали, и сколько слов найдено
в тексте. Причём, подсвеченое слово всегда первое в возвращаемом
фрагменте. Может, не очень понятно описал, приведу пример.
Вот с коротким текстом:
ano=# select ts_headline('russian', 'Сотрудники же сосредоточены на том,
чтобы предлагать клиенту наиболее сложные финансовые продукты. Потом
много всяких словьев про офисы, в особенности про офисы
самообслуживания, которые надо подсветить как надо', to_tsquery('офис &
самообслуживания'));
ts_headline
-----------------------------------------------------------------------
всяких словьев про <b>офисы</b>, в особенности про <b>офисы</b>
<b>самообслуживания</b>, которые надо подсветить как надо

А вот то же самое, но от длинной статьи:
ano=# select ts_headline('russian', content, to_tsquery('офис &
самообслуживания')) from article, fts_text where article.id =
fts_text.id and fts_text.vector @@ to_tsquery('офис & самообслуживания')
limit 1;

ts_headline
-----------------------------------------------------------------------
<b>самообслуживания</b>. Сотрудники же сосредоточены на том, чтобы
предлагать клиенту наиболее сложные финансовые продукты. А все системы
банка помогают им в этом &#8211; подсказывая, какие продукты наиболее
проходные в данной ситуации именно для этой категории клиентов

Кто знает, как бороть?

Browse pgsql-ru-general by date

  From Date Subject
Next Message Dmitry Turin 2008-12-09 14:46:20 freelancers for SQL50
Previous Message Maxim Boguk 2008-12-03 06:39:45 Re: чёртово округление