Поиск текста

Модераторы: kdv, CyberMax

Ответить
Anthony
Сообщения: 7
Зарегистрирован: 08 дек 2010, 23:41

Поиск текста

Сообщение Anthony » 04 мар 2011, 12:31

Текст книги по предложениям введён в таблицу SQL сервера.
В каждой записи - одно предложение. Вот поля этой таблицы:
ID - номер записи (в таблице VERSES),
CHAPT - ID главы, в которую входит это предложение,
PARAG - ID абзаца, в который входит это предложение,
TEXT - текст предложения.
Если нужно найти в тексте книги все предложения, в которых одновременно присутствует "слово1" и "слово2", то допустим можно применить такое выражение:
select * from VERSES where (TEXT like '% слово1 %') and (TEXT like '% слово2 %')
И вот вопрос: а как составить такой SQL запрос, который бы позволил находить присутствие 2 слов не в предложениях, а в целых абзацах?
То есть, если "слово1" и "слово2" - одновременно присутствуют в тексте какого-либо целого абзаца, то предложения, содержащие либо "слово1", либо "слово2", либо оба слова - попали бы в результат.

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: Поиск текста

Сообщение Dimitry Sibiryakov » 04 мар 2011, 14:22

А не задействовать ли тебе сфинкса вместо собственных мучений?..

Anthony
Сообщения: 7
Зарегистрирован: 08 дек 2010, 23:41

Re: Поиск текста

Сообщение Anthony » 04 мар 2011, 15:13

Dimitry Sibiryakov писал(а):А не задействовать ли тебе сфинкса вместо собственных мучений?..
Спасибо за совет. А какое-то описание этому "сфинксу" есть?..

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Re: Поиск текста

Сообщение hvlad » 04 мар 2011, 15:40

Anthony писал(а):А какое-то описание этому "сфинксу" есть?..
Может сначала стоит самому поискать очевидный ответ на этот ненужный вопрос ?

Ответить