Общие сведения о запросах слияния

Операция слияния объединяет две существующие таблицы на основе сопоставления значений из одного или нескольких столбцов. Вы можете использовать различные типы соединений в зависимости от нужных выходных данных.

Схема, на которой показаны две пустые таблицы сверху, объединенные в таблицу внизу со всеми столбцами из левой таблицы и одной из правой таблицы.

Объединение запросов

Вы можете найти команду "Запросы слияния " на вкладке "Главная " в группе "Объединение ". В раскрывающемся меню списка есть два варианта:

  • Запросы слияния: отображает диалоговое окно слияния с выбранным запросом в качестве левой таблицы операции слияния.
  • Объединить запросы как новые: отображает диалоговое окно Слияние без предварительно выбранных таблиц для операции слияния.

Screenshot домашней вкладки Power Query с параметрами объединения запросов выделены.

Идентификация таблиц для объединения

Для операции слияния требуется две таблицы:

  • Левая таблица для слияния: первый выбор, от верхней части до нижней части экрана.
  • Справа таблица для слияния: второй выбор сверху вниз экрана.

Снимок экрана: диалоговое окно слияния без записей для левой или правой таблицы.

Замечание

Позиция (слева или справа) таблиц становится очень важной при выборе правильного типа соединения для использования.

Выбор пар столбцов

После выбора левой и правой таблиц можно выбрать столбцы, которые управляют соединением между таблицами. В следующем примере существует две таблицы:

  • Продажи: поле CountryID является ключом или идентификатором из таблицы Страны.
  • Страны: эта таблица содержит идентификатор CountryID и имя страны.

Диалоговое окно слияния с выбранными левыми и правыми таблицами и столбцами.

Снимок экрана: диалоговое окно слияния, в котором левая таблица для объединения установлена как Sales с выбранным столбцом CountryID, а правая таблица установлена как Countries с выбранным столбцом CountryID.

Цель состоит в том, чтобы объединить эти таблицы с помощью столбца CountryID из обеих таблиц, поэтому вы выбираете столбец CountryID из каждой таблицы. После выбора появится сообщение с предполагаемым количеством совпадений в нижней части диалогового окна.

Замечание

Хотя в этом примере показан один и тот же заголовок столбца для обеих таблиц, соответствующие имена столбцов не обязательны для операции слияния. Заголовки столбцов не должны совпадать между таблицами. Однако важно отметить, что столбцы должны иметь один и тот же тип данных, в противном случае операция слияния может не дать правильных результатов.

Вы также можете выбрать несколько столбцов для соединения, нажав клавиши CTRL при выборе столбцов. При этом порядок выбора столбцов отображается в небольших числах рядом с заголовками столбцов, начиная с 1.

В этом примере у вас есть таблицы Sales and Countries . Каждая из таблиц содержит столбцы CountryID и StateID , которые необходимо связать для соединения между обоими столбцами.

Сначала выберите столбец CountryID в таблице Sales , нажмите клавиши CTRL и выберите столбец StateID . (Это действие показывает небольшие числа в заголовках столбцов.) Затем выполните те же выборы в таблице "Страны ".

Диалоговое окно слияния с параметрами для левых и правых таблиц.

Снимок экрана: диалоговое окно слияния, где левая таблица настроена на слияние с 'Продажи', с выбранными столбцами CountryID и StateID, а правая таблица настроена на слияние с 'Страны', с такими же выбранными столбцами CountryID и StateID. Тип соединения имеет значение "Левая внешняя".

Замечание

При выборе нескольких столбцов для соединения должен соответствовать порядок выбора столбцов в каждой таблице. Например, первый столбец, выбранный в левой таблице, сопоставляется с первым столбцом, выбранным в правой таблице, и т. д. В противном случае вы можете наблюдать некорректные результаты соединения.

Использование предложения пары столбцов

При выборе левой и правой таблицы в диалоговом окне слияния можно проверить значок лампочки в правом верхнем углу диалогового окна. Эта лампочка указывает, есть ли какие-либо предложения при сопоставлении столбцов между обеими таблицами.

Существует множество рекомендаций, но для этого сценария есть только одна рекомендация функции: она сопоставляет столбец CountryID из таблицы Sales со столбцом CountryID из таблицы "Страны". Вы можете выбрать его, и сопоставление пар столбцов автоматически применяется к вашему диалоговому окну.

Снимок экрана: диалоговое окно слияния, показывающее предлагаемое связывание столбцов CountryID для таблиц Sales и Country.

Замечание

Предлагается только сопоставление пар столбцов. Другие параметры в этом диалоговом окне, такие как тип соединения или настройки нечеткого сопоставления, находятся вне области этого предложения.

Разверните или агрегируйте новый объединенный столбец таблицы

После нажатия кнопки "ОК " в диалоговом окне слияния базовая таблица запроса содержит все столбцы из левой таблицы. Кроме того, новый столбец добавляется с тем же именем, что и в правой таблице. Этот столбец содержит значения, соответствующие таблице справа, по строкам.

Здесь можно развернуть или объединить поля из этого нового столбца таблицы, которые являются полями из правой таблицы.

Разверните меню столбцов таблицы.

Замечание

В настоящее время Power Query Online предоставляет только операцию расширения в интерфейсе. В конце этого года будет добавлен параметр агрегирования.

Объединение типов

Тип соединения указывает, как выполняется операция слияния. В следующей таблице описаны доступные типы соединения в Power Query.

Тип соединения Icon Описание
Левое внешнее соединение Все строки из левой таблицы и соответствующие им строки из правой таблицы
Правое внешнее соединение Все строки из правой таблицы и соответствующие им строки из левой таблицы
Полное внешнее соединение Все строки из обеих таблиц
Внутреннее соединение Только соответствующие строки из обеих таблиц
Левая защита от соединения Только строки из левой таблицы
Правое анти присоединение Только строки из правой таблицы

Нечеткое сопоставление

Вы используете нечеткое слияние для применения нечетких алгоритмов сопоставления при сравнении столбцов, чтобы попытаться найти совпадения в таблицах, которые вы объединяете. Эту функцию можно включить, установив флажок "Использовать нечеткое сопоставление для выполнения слияния" в диалоговом окне "Слияние". Расширьте нечеткие параметры сопоставления, чтобы увидеть все доступные конфигурации.

Замечание

Нечеткое сопоставление поддерживается только для операций слияния по текстовым столбцам. Дополнительные сведения см. в разделе Как работает нечеткое сопоставление в Power Query.