Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Основная масса номенклатуры
- MERGE [DataWH].dbo.[t_Номенклатура] AS target USING
- (SELECT en.[Ссылка] ,
- en.[ПометкаУдаления] ,
- en.[Родитель] ,
- en.[Код] ,
- en.[Наименование] ,
- en.[Артикул] ,
- ed.[ID_ЕдиницаИзмерения] ,
- n.[Комментарий] ,
- en.[НаименованиеПолное] ,
- vn.[ID_ВидНоменклатуры] ,
- en.[ДополнительноеОписаниеНоменклатур] ,
- nkt.[ID_КатегорияТовара] ,
- nf.[ID_Фасон] ,
- nt.[ID_Ткань] ,
- nn.[ID_Наполнитель] ,
- nm.[ID_Мех] ,
- ns.[ID_Cезон] ,
- np.[ID_Поставщик] ,
- ng.[ID_ГруппаТовара] ,
- ntt.[ID_ТипТовара] ,
- nttt.[ID_Стиль] ,
- --nott.[ID_ОтборТовара] --,nottt.[ID_ОтборТовара2021] ,
- isnull(rol.[ID_SelectionLast], 12) ,
- nvtc.[ID_ВыборТЦ] ,
- nir.[ID_ИсторияРаздачи] ,
- na.[ID_Акция] ,
- isnull(npp.[ID_Перекосы], 2) ,
- pol.[ID_Пол] ,
- isnull(hn.[ID_XNomen], 1) AS [ID_XNomen]
- FROM [DataWH].[stg].[t_Номенклатура] en
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_ВидНоменклатуры] vn ON vn.ВидНоменклатуры = isnull(en.ВидНоменклатуры, 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_ЕдиницаИзмерения] ed ON ed.ЕдиницаИзмерения = isnull(en.БазоваяЕдиницаИзмерения, 'Не указано')
- LEFT OUTER JOIN [DataWH].[stg].[t_Excel_Номенклатура] n ON n.Артикул = en.[Артикул]
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_КатегорияТовара] nkt ON nkt.[Категория товара] = isnull(n.[Категория товара], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Фасон] nf ON nf.[Фасон/силуэт] = isnull(n.[Фасон/силуэт], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Ткань] nt ON nt.Ткань = isnull(n.Ткань, 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Наполнитель] nn ON nn.Наполнитель = isnull(n.Наполнитель, 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Мех] nm ON nm.Мех = isnull(n.Мех, 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Сезон] ns ON ns.[Cезон (год)] = isnull(n.[Cезон (год)], 'Не указано')
- AND ns.[Cезон (коллекция)] = isnull(n.[Cезон (коллекция)], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Поставщик] np ON np.Поставщик = isnull(n.Поставщик, 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_ГруппаТовара] ng ON ng.[Группа товара] = isnull(n.[Группа товара], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_ТипТовара] ntt ON ntt.[Тип товара] = isnull(n.[Тип товара], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Стиль] nttt ON nttt.[Стиль] = isnull(n.[Стиль], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_ОтборТовара] nott ON nott.[Отбор товара] = isnull(n.[Отбор товара], 'Не указано')
- AND isnull(n.[Отбор товара (легкий)], 'Не указано') = nott.[Отбор товара (легкий)] --left outer join [DataWH].[dbo].[t_Ном_ОтборТовара2021] nottt on nottt.[Отбор товара 2021] = isnull(n.[Отбор Товара 2021], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_ОтборТовараLast] rol ON en.[Артикул] = rol.[Артикул]
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_ВыборТЦ] nvtc ON nvtc.[Выбор ТЦ] = isnull(n.[Выбор ТЦ], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_ИсторияРаздачи] nir ON nir.[История раздачи] = isnull(n.[история раздачи], 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Акция] na ON na.Акция = isnull(n.акция, 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Перекосы] npp ON npp.Артикул = en.[Артикул]
- LEFT OUTER JOIN [DataWH].[dbo].[t_Ном_Пол] pol ON pol.Пол = isnull(n.Пол, 'Не указано')
- LEFT OUTER JOIN [DataWH].[dbo].[t_Номенклатура] rn ON en.[Родитель] = rn.[Ссылка]
- LEFT OUTER JOIN [DataWH].[dbo].[t_ХрНоменклатуры] hn ON en.Ссылка = hn.Владелец
- WHERE ЭтоГруппа = 1) AS SOURCE ([Ссылка],
- [ПометкаУдаления],
- [Родитель],
- [Код],
- [Наименование],
- [Артикул],
- [ID_ЕдиницаИзмерения],
- [Комментарий],
- [НаименованиеПолное],
- [ID_ВидНоменклатуры],
- [ДополнительноеОписаниеНоменклатур],
- [ID_КатегорияТовара],
- [ID_Фасон],
- [ID_Ткань],
- [ID_Наполнитель],
- [ID_Мех],
- [ID_Cезон],
- [ID_Поставщик],
- [ID_ГруппаТовара],
- [ID_ТипТовара],
- [ID_Стиль],
- [ID_ОтборТовара],
- [ID_SelectionLast],
- [ID_ВыборТЦ],
- [ID_ИсторияРаздачи],
- [ID_Акция],
- [ID_Перекосы],
- [ID_Пол],
- [ID_XNomen]) ON (target.[Ссылка] = source.[Ссылка]
- AND target.[ID_XNomen]= source.[ID_XNomen]) WHEN matched THEN
- UPDATE
- SET target.[Код] = source.[Код],
- target.[Наименование] = source.[Наименование],
- target.[Артикул] = source.[Артикул],
- target.[ID_ЕдиницаИзмерения] = source.[ID_ЕдиницаИзмерения],
- target.[Комментарий] = source.[Комментарий],
- target.[НаименованиеПолное] = source.[НаименованиеПолное],
- target.[ID_ВидНоменклатуры] = source.[ID_ВидНоменклатуры],
- target.[ДополнительноеОписаниеНоменклатур] = source.[ДополнительноеОписаниеНоменклатур],
- target.[ID_КатегорияТовара] = source.[ID_КатегорияТовара],
- target.[ID_Фасон] = source.[ID_Фасон],
- target.[ID_Ткань] = source.[ID_Ткань],
- target.[ID_Наполнитель] = source.[ID_Наполнитель],
- target.[ID_Мех] = source.[ID_Мех],
- target.[ID_Cезон] = source.[ID_Cезон],
- target.[ID_Поставщик] = source.[ID_Поставщик],
- target.[ID_ГруппаТовара] = source.[ID_ГруппаТовара],
- target.[ID_ТипТовара] = source.[ID_ТипТовара],
- target.[ID_ОтборТовара] = source.[ID_ОтборТовара],
- target.[ID_Стиль] = source.[ID_Стиль],
- target.[ID_SelectionLast] = source.[ID_SelectionLast],
- target.[ID_ВыборТЦ] = source.[ID_ВыборТЦ],
- target.[ID_ИсторияРаздачи] = source.[ID_ИсторияРаздачи],
- target.[ID_Акция] = source.[ID_Акция],
- target.[ID_Перекосы] = source.[ID_Перекосы],
- target.[ID_Пол] = source.[ID_Пол] WHEN NOT matched BY target THEN
- INSERT ([Ссылка],
- [ПометкаУдаления],
- [Родитель],
- [Код],
- [Наименование],
- [Артикул],
- [ID_ЕдиницаИзмерения],
- [Комментарий],
- [НаименованиеПолное],
- [ID_ВидНоменклатуры],
- [ДополнительноеОписаниеНоменклатур],
- [ID_КатегорияТовара],
- [ID_Фасон],
- [ID_Ткань],
- [ID_Наполнитель],
- [ID_Мех],
- [ID_Cезон],
- [ID_Поставщик],
- [ID_ГруппаТовара],
- [ID_ТипТовара],
- [ID_Стиль],
- [ID_ОтборТовара],
- [ID_SelectionLast],
- [ID_ВыборТЦ],
- [ID_ИсторияРаздачи],
- [ID_Акция],
- [ID_Перекосы],
- [ID_Пол],
- [ID_XNomen])
- VALUES (source.[Ссылка],source.[ПометкаУдаления],source.[Родитель],source.[Код],source.[Наименование],source.[Артикул],source.[ID_ЕдиницаИзмерения],source.[Комментарий],source.[НаименованиеПолное], source.[ID_ВидНоменклатуры],source.[ДополнительноеОписаниеНоменклатур], source.[ID_КатегорияТовара],source.[ID_Фасон],source.[ID_Ткань],source.[ID_Наполнитель],source.[ID_Мех],source.[ID_Cезон], source.[ID_Поставщик],source.[ID_ГруппаТовара],source.[ID_ТипТовара],source.[ID_ОтборТовара],source.[ID_SelectionLast],source.[ID_Стиль],source.[ID_ВыборТЦ],source.[ID_ИсторияРаздачи],source.[ID_Акция],source.[ID_Перекосы],source.[ID_Пол], source.[ID_XNomen]);
- --when not matched by source then delete;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement