Дело в том, что предложенный мной полтора года назад метод был упрощенной моделью полнотекстового поиска (см. http://forum.clarionlife.net/phpbb/viewtopic.php?t=3301).
Для реализации полной модели в наших кустарных условиях (шутка!) требуется немногим большее, а именно:
нужно создать и поддерживать таблицу вида:
(<ID строки>,<ID поля>,<смещение>,<символ>).
Иметь два индекса: по символу и по остальным трём полям.
Практически после этого вы имеете максимальную скорость поиска по текстовым полям. Объяснять, как производить поиск, думаю, не нужно?
Разумеется, это влечёт накладные расходы в виде объёма такой таблицы и индексов, и это тоже обсуждалось ранее. Но скорость требует жертв. Чем-то всегда жертвуешь.
Контекстный поиск в Browse
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Контекстный поиск в Browse
Я для SQL создавал временную базу, пусть даже через Like
Insert into tempdb (select id from <таблица> where <длинное-длинное условие>)
А потом
Brw1.View{Prop:SQLFilter} = 'id in (select id from tempdb)' - и вполне прилично листается
Кстати, на http://www.allitebooks.com/ и http://www.it-ebooks.info/, регулярно посещаемых ( о, сколько нам открытий чудных...) не знают слова Firebird, наверно, что-то секретное
Insert into tempdb (select id from <таблица> where <длинное-длинное условие>)
А потом
Brw1.View{Prop:SQLFilter} = 'id in (select id from tempdb)' - и вполне прилично листается
Кстати, на http://www.allitebooks.com/ и http://www.it-ebooks.info/, регулярно посещаемых ( о, сколько нам открытий чудных...) не знают слова Firebird, наверно, что-то секретное
