0 / 0 / 0
Регистрация: 03.02.2007
Сообщений: 821
|
|
1 | |
Коллекция по совпадениям07.10.2007, 14:38. Показов 23085. Ответов 17
Метки нет (Все метки)
Раньше задавал этот вопрос............
Есть куча документов с полем , .. в Этом поле много значений, "Республика", "Беларусь", "Республика Беларусь", "Беларусь Республика", "Республика моя Беларусь" и т.д. , вообщем куча вариантов В строке поиска, делаю запрос, найти "Республика Беларусь" stSearch = "Беларусь* or Республика*" (или эту строку надо как-то переделать) КАк мне сделать запрос, чтобы получилась коллекция по совпадениям Set dcCollection = db.FTSearch( stSearch , 0, FT_SCORES) ???????? т.е. чтобы в коллекции первые доки были со значением где есть эти два слова (Республика и Беларусь), а все остальные доки с любым одним словом
0
|
07.10.2007, 14:38 | |
Ответы с готовыми решениями:
17
Выборка по совпадениям Группировка по совпадениям Выборка по неточным совпадениям Подсчет количества строк по совпадениям |
0 / 0 / 0
Регистрация: 19.07.2007
Сообщений: 1,098
|
|
07.10.2007, 14:42 | 2 |
Так ведь отвечали уже... Сортируй свою коллекцию потом так, как тебе хочется... :D
0
|
1 / 1 / 0
Регистрация: 04.08.2006
Сообщений: 2,950
|
|
07.10.2007, 14:44 | 3 |
Для: wowa
РУКАМИ, и вообще зачем спрашивать каждый раз одно и тоже! ?
0
|
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
|
|
07.10.2007, 14:48 | 4 |
Сделать два поиска. Получить две коллекции.
0
|
0 / 0 / 0
Регистрация: 03.02.2007
Сообщений: 821
|
|
07.10.2007, 15:01 | 5 |
Для: Medevic
Т.е. сделать сначала коллекцию где строка запроса содержит and, а потом OR ???? stSearch = "Беларусь* or Республика*"
0
|
0 / 0 / 0
Регистрация: 04.12.2004
Сообщений: 3,329
|
|
07.10.2007, 15:03 | 6 |
Для: wowa
Ага. Во второй коллекции пропускать документы, которые есть в первой. :D
0
|
0 / 0 / 0
Регистрация: 23.10.2006
Сообщений: 218
|
|
07.10.2007, 15:04 | 7 |
Абажите! Давайте подумаем. Для этого обратимся к документаци :D.
0
|
0 / 0 / 0
Регистрация: 19.07.2007
Сообщений: 1,098
|
|
07.10.2007, 15:13 | 8 |
тада уже не TERMWEIGHT 50 "Республик* Беларус*" , а TERMWEIGHT 50 "Республика Беларусь"
А то он выберет тебе еще и "Рестпублика Боливия - это вам не Беларусь" :D
0
|
0 / 0 / 0
Регистрация: 03.02.2007
Сообщений: 821
|
|
07.10.2007, 15:17 | 9 |
<!--QuoteBegin-Medevic+8:10:2007, 13:50 -->
<span class="vbquote">(Medevic @ 8:10:2007, 13:50 )</span><!--QuoteEBegin-->Ага. Во второй коллекции пропускать документы, которые есть в первой. [snapback]80972" rel="nofollow" target="_blank[/snapback]?[/quote] А если в строке запроса 3 слова,.... то документы имеющие значения поля в одно и два совпадающих слова будут перемешиваться <!--QuoteBegin-Mihal+8:10:2007, 13:51 --> <span class="vbquote">(Mihal @ 8:10:2007, 13:51 )</span><!--QuoteEBegin-->А если построить запрос таким обпазом: TERMWEIGHT 50 "Республик* Беларус*" OR TERMWEIGHT 25 "Республик*" OR TERMWEIGHT 25 "Республик*"? [snapback]80973" rel="nofollow" target="_blank[/snapback]?[/quote] Вот тут я что-то не совсем понял.... stSearch = "FIELD имя_поля = "TERMWEIGHT 50 "Республик* Беларус*" OR TERMWEIGHT 25 "Республик*" OR TERMWEIGHT 25 "Республик*"" ???
0
|
0 / 0 / 0
Регистрация: 23.10.2006
Сообщений: 218
|
|
07.10.2007, 15:21 | 10 |
Сань, я ко всему отношусь как можно проще и не пложу лишних сущностей :P .
Если гаписано <!--QuoteBegin-wowa+8:10:2007, 14:04 --> <span class="vbquote">(wowa @ 8:10:2007, 14:04 )</span><!--QuoteEBegin-->Вот тут я что-то не совсем понял.... stSearch = FIELD имя_поля = "TERMWEIGHT 50 "Республик* Беларус*" OR TERMWEIGHT 25 "Республик*" OR TERMWEIGHT 25 "Республик*"" ??? [snapback]80975" rel="nofollow" target="_blank[/snapback]?[/quote] Что надо-то? Найти доки со словами "республика" или "Белорусь"? Или найти доки, в которых в конкретных итемах есть "республика" и "Беларусь"? В описании проблемы ни слова нету о итемах или полях, между прочим.
0
|
0 / 0 / 0
Регистрация: 03.02.2007
Сообщений: 821
|
|
07.10.2007, 15:27 | 11 |
<!--QuoteBegin-wowa+8:10:2007, 13:25 -->
<span class="vbquote">(wowa @ 8:10:2007, 13:25 )</span><!--QuoteEBegin-->Есть куча документов с полем , .. в Этом поле много значений, "Республика [snapback]80963" rel="nofollow" target="_blank[/snapback]?[/quote] По полю конкретному... Сорри за неполное высказывание проблемы..
0
|
0 / 0 / 0
Регистрация: 23.10.2006
Сообщений: 218
|
|
07.10.2007, 15:39 | 12 |
(TERMWEIGHT 50 "Республик* Беларус*" AND [Memo]="Республик* Беларус*") OR (TERMWEIGHT 25 "Республик*" AND [Memo]="Республик*") OR (TERMWEIGHT 25 "Беларус*" AND [Memo]="Беларус*")
Попробуйте! А потом раскажите как получилось. Самомо интересно!
0
|
0 / 0 / 0
Регистрация: 03.02.2007
Сообщений: 821
|
|
07.10.2007, 16:46 | 13 |
Для: Mihal
Круто, почти работает "Беларусь " заносит вниз, а "Республика Беларусь" и "Республика" перемешивает ... где-то надо OR на AND заменить или наоборот Для: Mihal Большое спасибо, сам бы не дадумался Для FTSearch (TERMWEIGHT 50 ""Республика Беларусь"" AND FIELD имя_поля=""Республика Беларусь"") OR ( (TERMWEIGHT 25 ""Республика"" AND имя_поля=""Республика"") or (TERMWEIGHT 25 ""Беларусь"" AND FIELD имя_поля=""Беларусь"") ) Добавил скобочки и заработало (выделил какие)
0
|
0 / 0 / 0
Регистрация: 03.02.2007
Сообщений: 821
|
|
07.10.2007, 17:00 | 14 |
хотя непонятно, то оно все нормально делает, то опять "Республика" и "Республика Беларусь" перемешивает... а "Беларусь" все нормально, - в конце
0
|
0 / 0 / 0
Регистрация: 23.10.2006
Сообщений: 218
|
|
07.10.2007, 17:49 | 15 |
<!--QuoteBegin-wowa+8:10:2007, 15:47 -->
<span class="vbquote">(wowa @ 8:10:2007, 15:47 )</span><!--QuoteEBegin-->хотя непонятно, то оно все нормально делает, то опять "Республика" и "Республика Беларусь" перемешивает... а "Беларусь" все нормально, - в конце [snapback]80990" rel="nofollow" target="_blank[/snapback]?[/quote] А если первым вхождением сделать так: TERMWEIGHT 50 ""Республика Беларусь"" AND FIELD имя_поля=""Беларусь"" AND FIELD имя_поля=""Республика "" ? Там же ещё всякие фази сёрчи ещё могут влиять. Ой блин! На выходе ж получаем NotesDOcumentCollection :D. А там порядок документов определяется трансциндентным образом :P. Гы-гы. Хотя, опять же, в документации есть следующее: Дорогу осилит идущий! P.S. Интуиция подсказывает, что достаточно будет разноса "Республика Беларусь" по двум разным условиям с AND. P.P.S. А я родился в городе Калинковичи Гомельской области! ;)
0
|
0 / 0 / 0
Регистрация: 23.10.2006
Сообщений: 218
|
|
07.10.2007, 17:59 | 16 |
Да! Вот эти дополнительный скопки меня смущают. Вряд ли в них дело.
0
|
0 / 0 / 0
Регистрация: 03.02.2007
Сообщений: 821
|
|
07.10.2007, 20:39 | 17 |
Да, дело не в скобках.....Поизменял TERMWEIGHT , вроде как-то лучше стало работать
<!--QuoteBegin-Mihal+8:10:2007, 13:51 --> <span class="vbquote">(Mihal @ 8:10:2007, 13:51 )</span><!--QuoteEBegin-->Для этого обратимся к документаци [snapback]80973" rel="nofollow" target="_blank[/snapback]?[/quote] А что за документация?? В хелпе я что-то не нашел..
0
|
0 / 0 / 0
Регистрация: 23.10.2006
Сообщений: 218
|
|
07.10.2007, 23:28 | 18 |
<!--QuoteBegin-wowa+8:10:2007, 19:26 -->
<span class="vbquote">(wowa @ 8:10:2007, 19:26 )</span><!--QuoteEBegin-->А что за документация?? В хелпе я что-то не нашел.. [snapback]81024" rel="nofollow" target="_blank[/snapback]?[/quote] Метод FTSearch класса NotesDatabase B)
0
|
07.10.2007, 23:28 | |
07.10.2007, 23:28 | |
Помогаю со студенческими работами здесь
18
Поиск в текстовом файле по совпадениям символов Поиск номера строки по совпадениям в 2 столбцах Коллекция Коллекция Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |