Есть две таблицы которые нужно связать:
.Advertising_Bulksheet и .KeyWords+KeyWords_position
Прямо они не связаны друг с другом никак
Чтобы их связать нужно еще загрузить три таблицы
• .Catalog_company
• .Intersection_company_ASIN
• .product
Как на скриншоте
(https://i106.fastpic.ru/big/2019/1008/ec/421f27d0b6c30653db8a265370c94eec.png) (https://fastpic.ru/)
Чтобы их связать я так понял нужно связать таблицу .Advertising_Bulksheet с таблицами
• .Catalog_company
• .Intersection_company_ASIN
• .product
Но есть проблема что в таблице .product нам надо связать два поля с таблицей .Advertising_Bulksheet
Основной_отчетПодготовка:
LOAD
id as id,
Campaign as Campaign,
Keyword_or_Product_Targeting as Keyword_or_Product,
IdAccount as IdAccount;
SQL SELECT *
FROM "AmazonFinance".stat.Advertising_Bulksheet;
Left Join (Основной_отчетПодготовка)
LOAD
Iden as Iden,
NameCompany as Campaign;
SQL SELECT *
FROM "AmazonFinance".stat.Catalog_company;
Left Join (Основной_отчетПодготовка)
LOAD
IdCompany as Iden,
IdASIN as IdASIN;
SQL SELECT *
FROM "AmazonFinance".stat.Intersection_company_ASIN;
Left Join (Основной_отчетПодготовка)
LOAD
id as IdASIN,
IdAccount as IdAccount, // в этой таблице так нельзя сделать
code as asinkeyword;
SQL SELECT *
FROM "AmazonFinance".stat.product;
Исходя из вышесказанного нам надо я так понимаю функция Applymap
А дальше получается, чтобы присоединить таблицу KeyWords
Нужно связать поля code и asin и сопоставить вместе поля Keyword_or_Product и keyword.
Важно понимать что на 1 asin много keyword. то есть в нем своеобразное подмножество и если поле keyword не находит для Keyword_or_Product, то тогда Keyword_or_Product не нужны
Вот так я загружаю последнюю таблицу
Отчет_КлючевыеПодготовка:
LOAD
id as idkeyword,
asin as asinkeyword,
keyword as keyword_report;
SQL SELECT *
FROM "AmazonFinance".stat.KeyWords;
Join
LOAD
id_keyword as idkeyword,
date as date_keyword,
page as page_keyword;
SQL SELECT *
FROM [AmazonFinance].[stat].[KeyWords_Position];
Мне хотя бы напутствие. )
Вам бы более понятное ТЗ ;D
НУ я таблицу специально нарисовал )
нужно объеденить таблицу .Advertising_Bulksheet и .product по трем полям
Я нашел тут пример последний как по двум полям это сделать http://blog.atkcg.ru/funkcii-tablic-sopostavleniya-applymap-chast-1/ с помощью ApplyMap
Цитата: HuDiK от 11 октября 2019, 10:56:39 нужно объеденить таблицу .Advertising_Bulksheet и .product по трем полям
Нужно понимать, что содержат эти самые поля.
Допустим, у нас есть две таблицы.
Первая содержит информацию о Дате сделки, Продукт сделки и Специалисте который провёл её.
ПерваяТаблица:
Load
ДатаСделки,
Продукт,
Специалист
From
...
Вторая таблица будет содержать информацию о Дате сделки, Продукте и сумме сделки.
ВтораяТаблица:
Load
ДатаСделки,
Продукт,
СуммаСделки
From
...
В примере выше, объединять по дате или продукту по отдельности не выйдет.
Нам ничего не мешает сделать следующее:
ПерваяТаблица:
Load
ДатаСделки,
Продукт,
Специалист,
ДатаСделки&Продукт as Key
From
...
Left Join
Load
ДатаСделки&Продукт as Key,
СуммаСделки
From
...
Таким образом, под N столбцам, вы можете объединить всё что вам нужно.
Пока вроде бы получается. У меня вопрос тогда какая разница с функцией ApplyMap.