Функция выполняет внутреннее соединение. В результат включаются только строки в обеих таблицах, удовлетворяющие условию соединения.
Формат:
InnerJoin ( tempTable, fieldName1 as alias1,…,fieldNameN as aliasN, joinCondition)
Параметры:
- tempTable - имя присоединяемой временной таблицы, например, $ result_1, $ result_2
- fieldName1,…, fieldNameN - имена результирующих полей. Поля, включенные в основную таблицу, обозначаются просто по имени. Поля объединенной таблицы вводятся с именем временной таблицы, например, result_1.product, result_1.amount.
- alias1,…, aliasN - при необходимости можно задать псевдонимы полей.
- joinCondition - условия соединения, например, result_1.product = product. В условиях вы можете использовать «И» или «Или» для сложных условий.
Возвращенный тип данных:
table
Описание:
Результатом соединения является таблица, в которую включены только строки обеих соединенных таблиц, удовлетворяющие условию соединения.
Пример:
Employees | Last (Employee, Rate);
Timesheet | GroupBy (Employee, Hours) | InnerJoin ($result_1, Employee, Hours, result_1.Rate as Rate, Employee = result_1.Employee) | Compute (Payroll, Rate * Hours )
Комментарии к примеру. Выбираем ставки сотрудников из реестра сотрудников, помещаем во временную таблицу - $ result_1. Затем мы выбираем отработанные часы сотрудников из реестра расписания. Выполните внутреннее соединение по условию сопоставления в строке сотрудника. Затем рассчитываем заработную плату.