Qlik sense - объединение столбцов внутренней таблицы

Автор tommix, 27 июля 2015, 06:19:14

« назад - далее »

tommix

Коллеги,
Есть таблица, Область - Регион - Регион РФ


Нужно, записать данные из столба Регион РФ поверх данных Регион. И оставить один объеденный столбец Регион.
Стоит добавить, что "Регион" и "Регион РФ" образуются в результате left join двух таблиц. Если сразу join`ить в Столбец "Регион", то данные по чему то не записываются.

join`ил следующим образом:
// Присоеденяем Регионы СНГ и МИР (МиМо, РФ, СНГ, Мир)
LEFT join (Demo_N)
LOAD
    Страна,
    Регион
FROM [lib://Demo_Country.xlsx]
(ooxml, embedded labels, table is Лист1);


// Присоеденяем Регионы  МиМо и РФ (МиМо, РФ, СНГ, Мир)
LEFT join (Demo_N)
LOAD
Страна,
    Область,
    Регион as Регион_РФ
FROM [lib://Demo_Regions.xlsx]
(ooxml, embedded labels, table is Лист1);

DmitryK

Добрый вечер) Уточнение небольшое) Нулевые значения в поле РегионРф тоже переносить? Если да, то просто перегрузите снова полученную таблицу, переименовав поле РегионРф в Регион, а Регион просто не грузите)

bibis

Как вариант прогрузить  из получившейся таблицы 2 столбца через mapping  load   . И  заново загрузить таблицу через applyMap  c 2я параметрами (старую дропнуть)

tommix

ЦитироватьНулевые значения в поле РегионРф тоже переносить?
Нет, нужно что бы по верх записались только загруженные Ячейки.

ЦитироватьКак вариант прогрузить  из получившейся таблицы 2 столбца через mapping  load   . И  заново загрузить таблицу через applyMap  c 2я параметрами (старую дропнуть)

Сейчас буду пробовать.

Парни. Спасибо.

DmitryK

Так же можно if-ом поиграться)

Tmp:
load * inline [
Область, Регион, РегионРФ
Краснодарский край, РФ, РФ
,СНГ,
Москва,РФ,МиМо
,Мир,
];

Add NoConcatenate
FactTable:
load Область,
Регион,
РегионРФ,
if(IsNull(РегионРФ) or len(РегионРФ)=0, Регион, РегионРФ) as НовыйРегион
Resident Tmp;

drop table Tmp;

tommix

DmitryK,
ЦитироватьТак же можно if-ом поиграться)

Этот вариант просто идеальный!

DmitryK


Яндекс.Метрика