Поделиться через


левое внешнее соединение.

Один из типов соединения, доступных в диалоговом окне слияния в Power Query, — это левое внешнее соединение, которое сохраняет все строки из левой таблицы и приводит любые соответствующие строки из правой таблицы. Дополнительные сведения см. в обзоре операций слияния.

Схема левого примера внешнего соединения.

На схеме показана левая таблица с столбцами Date, CountryID и Units. Выделенный столбец CountryID содержит значения 1 в строках 1 и 2, 3 в строке 3 и 4 в строке 4. На схеме показана левая таблица, содержащая столбцы ID и Country. Выделенный столбец идентификатора содержит значения 1 в строке 1 (обозначающие США), 2 в строке 2 (обозначающая Канаду) и 3 в строке 3 (обозначающая Панаму). Таблица под первой таблицей содержит столбцы Date, CountryID, Units и Country. В таблице есть четыре строки с двумя верхними строками, содержащими данные для CountryID 1, строку для CountryID 3 и строку для идентификатора страны 4. Так как справа таблица не содержала идентификатор 4, значение четвертой строки в столбце "Страна" содержит значение NULL.

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

  • Продажи: эта таблица содержит поля Date, CountryID и Units. CountryID — это целое число, представляющее уникальный идентификатор из таблицы "Страны ".

    Снимок экрана: таблица продаж, содержащая столбцы Date, CountryID и Units, с идентификатором countryID, равным 1 в строках 1 и 2, 3 в строке 3 и 4 в строке 4.

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

    Снимок экрана: пример таблицы

    Таблица стран с идентификатором, равным 1 в строке 1, 2 в строке 2 и 3 в строке 3, а страна — США в строке 1, Канаде в строке 2 и Панаме в строке 3.

В этом примере вы объединяете обе таблицы с таблицей Sales в виде левой таблицы и таблицы "Страны " в качестве правой. Соединение выполняется между следующими столбцами.

Поле из таблицы Sales Поле из таблицы "Страны"
ИДстраны Идентификатор

Цель — создать таблицу, как показано ниже, где имя страны отображается в качестве нового столбца "Страна" в таблице Sales до тех пор, пока в таблице "Страны" существует идентификатор countryID. Если между левыми и правыми таблицами нет совпадений, значение NULL является результатом слияния для этой строки. На следующем рисунке это значение NULL отображается для CountryID 4, которое было передано из таблицы Sales .

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

Чтобы выполнить левое внешнее соединение, сделайте:

  1. Выберите запрос "Продажи" и выберите "Объединить запросы".
  2. В диалоговом окне "Слияние" в правой таблице для слияния выберите "Страны".
  3. В таблице Sales выберите столбец CountryID.
  4. В таблице "Страны" выберите столбец идентификатора.
  5. В разделе "Тип соединения" выберите "Левый внешний".
  6. Нажмите ОК.

Снимок экрана: диалоговое окно слияния со столбцом CountryID, столбцом идентификатора и левой внешней кнопкой.

В созданном столбце "Страны" разверните поле "Страна ". Не установите флажок "Использовать исходное имя столбца" в качестве префикса .

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

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

Снимок экрана: окончательная таблица со столбцом Country, добавленная со значением четвертой строки этого столбца, равной NULL.