Функция WITHIN
Синтаксис функции:
WITHIN расстояние мера расстояния (последовательность терминов) ORDER
Параметры функции: расстояние – целое положительное число, определяющее количество условных единиц расстояния. При отсутствии параметра принимается значение, по умолчанию равное 1. мера расстояния – название условной единицы расстояния. Может принимать одно из следующих значений (при отсутствии параметра принимается значение по умолчанию - WORD): · CHAR – символ (буква); · WORD – слово; · SENT – предложение; · PARA – абзац (параграф). последовательность терминов – список терминов для поиска, которые должны располагаться на расстоянии, не более заданного друг от друга. Список терминов должен быть заключен в скобки. Разделителями в последовательности терминов являются символы пробела или запятой. Перечисленные через запятую термины составляют отдельную группу. Общая последовательность терминов не может состоять менее чем из двух групп, при этом группа может состоять из одного термина. ORDER – параметр, указывающий поисковой системе необходимость учета порядка расположения групп терминов. При отсутствии данного параметра считается, что последовательность расположения групп не имеет значения. Параметр также может быть записан в полной форме: ORDERED. Алгоритм работы: Поисковая система обеспечит получение только таких данных, в которых присутствует хотя бы один фрагмент, в котором хотя бы один из терминов первой группы находится на расстоянии не больше указанного от любого термина второй группы; хотя бы один из терминов второй группы находится на расстоянии не больше указанного от любого термина третьей группы и т.д. Если параметр ORDER не указан, то будут получены данные, в которых термины первой группы могут находиться как перед терминами второй группы, так и после них; термины второй группы могут находиться как перед терминами третьей группы, так и после них и т.д. В этом случае значение будет иметь только расстояния между терминами. Если параметр ORDER указан, то будут получены данные, в которых термины первой группы будут находиться только перед терминами второй группы; термины второй группы будут находиться только перед терминами третьей группы и т.д. Таким образом, значение будет иметь не только расстояния между терминами, но и порядок расположения групп в функции.
Примеры: Поиск по тексту документов. · within 10 (нефть газ) – по данному запросу будут найдены все документы, в текстах которых встречается хотя бы один фрагмент, в котором находятся слова нефть и газ, расположенные на расстоянии не более 10 слов друг от друга, при этом порядок слов не имеет значения. · within 2 sent (нефть газ) ORDER – по данному запросу будут найдены все документы, в текстах которых встречается хотя бы один фрагмент, в котором находятся слова нефть и газ, расположенные на расстоянии не более 2-х предложений друг от друга, при этом слово нефть должно обязательно стоять ПЕРЕД словом газ. · within 10 (нефт*, газ* Иран*, Ирак* США) – по данному запросу будут найдены все документы, в текстах которых встречается хотя бы один фрагмент, в котором термины нефть и/или газ, расположены на расстоянии не более 10 слов от терминов Иран* или Ирак*, которые, в свою очередь, должны быть расположены на расстоянии не более 10 слов от слова США. При этом порядок расположения терминов не имеет значения. В результате запроса будут получены документы, содержащие такие предложения как:
· within 10 (нефт*,газ* Иран*,Ирак* США) ORDER – данный запрос полностью аналогичен предыдущему, за исключением того, что поисковая система будет учитывать порядок расположения групп терминов, в связи с чем в результаты поиска попадут только 4-й и 5-й документы (см. выше).
|