Перейти к основному содержимому
Версия: 4.2

join

Описание

Комбинирует результаты подзапроса с результатами основного запроса.

Синтаксис

join [join-options...] [field-list] subsearch

Обязательные аргументы

ПараметрСинтаксисОписание
subsearch[ subsearch ]Запрос должен быть включен в квадратные скобки и начинаться с указания источника (source, script, makeresults и т.д.).

Опциональные аргументы

ПараметрСинтаксисПо умолчаниюОписание
field-listfield1 (field2 field3 ...)Если никакие поля не указаны, система будет производить автоматический выбор наиболее подходящих полей (по имени).Список полей, по которым будет производиться сопоставление результатов для обогащения (дополнения).
join-optionstype=(inner|outer| left) | max=<int>Уточняющее описание для join.

Опции join

ПараметрСинтаксисОписание
typetype=(inner|outer|left)type описывает способ "схлопывания" результатов.
maxmax=<int>Определяет максимальное количество записей, полученных от join (найденными совпадениями), для дополнения каждой записи исходного запроса.
Типы join

В случае inner в результат будут добавлены только те значения, по которым получилось обнаружить полное совпадение (например поле user (и его значение) в исходном запросе совпало с полем user (и его значением) в выборке join).

В случае left|outer в результат будут добавлены все результаты из исходной выборки, а результаты по которым удалось найти совпадения, будут дополнены данными из join.

Примеры запросов

Пример №1
source accessLogs qsize=10
| join type=left max=3 user message
[source radius_logs]
Пример №2
source accessLogs
| join type=inner user message
[source radius_logs]
Пример №3
source accessLogs
| join type=inner max=5 user message
[source radius_logs]