Skip to content

Instantly share code, notes, and snippets.

@ergunozyurt
Last active August 17, 2016 09:03
Show Gist options
  • Save ergunozyurt/8631a8d5b139f754f1516d8a7d1492c3 to your computer and use it in GitHub Desktop.
Save ergunozyurt/8631a8d5b139f754f1516d8a7d1492c3 to your computer and use it in GitHub Desktop.
MERGE ResultRssDatas as TARGET
USING (SELECT
RssDatas.RssDataID,
NewsChannelCategories.NewsChannelCategoryID,
NewsChannels.NewsChannelID,
NewsChannels.Name as NewsChannelName,
ChannelCategories.ChannelCategoryID,
NewsChannelCategories.CountryID,
NewsChannelCategories.LanguageID,
NewsChannelCategories.IsBreakingNews,
NewsChannelCategories.IsSpotNews,
RssDatas.Title,
RssDatas.Link,
Image1X = Case When NewsChannelCategories.IsBoardImageVisible = 1 Then RssDatas.Image1X Else NULL End,
Image2X = Case When NewsChannelCategories.IsBoardImageVisible = 1 Then RssDatas.Image2X Else NULL End,
Image3X = Case When NewsChannelCategories.IsBoardImageVisible = 1 Then RssDatas.Image3X Else NULL End,
ImageIpad2X = Case When NewsChannelCategories.IsBoardImageVisible = 1 Then RssDatas.ImageIpad2X Else NULL End,
ImageIpad3X = Case When NewsChannelCategories.IsBoardImageVisible = 1 Then RssDatas.ImageIpad3X Else NULL End,
ImageIpad4X = Case When NewsChannelCategories.IsBoardImageVisible = 1 Then RssDatas.ImageIpad4X Else NULL End,
ImageDetail = Case When NewsChannelCategories.IsBoardImageVisible = 1 Then RssDatas.ImageDetail Else NULL End,
RssDatas.PubDate,
RssDatas.TotalLikeCount,
RssDatas.TotalUnlikeCount,
RssDatas.TotalShareCount,
RssDatas.TotalReadCount,
RssDatas.ShareUrl,
RssDatas.AlwaysShowImages,
RssDatas.ShowInCategories,
RssDatas.ShowAtStart,
RssDatas.BundlePartner,
RssDatas.MyBundlePartner
FROM CHANGETABLE (CHANGES RssDatas, 74722) AS CTTable
LEFT OUTER JOIN RssDatas WITH(NOLOCK) ON RssDatas.RssDataID = CTTable.RssDataID
INNER JOIN NewsChannelCategories WITH(NOLOCK) ON RssDatas.NewChannelCategoryID = NewsChannelCategories.NewsChannelCategoryID
INNER JOIN NewsChannels WITH(NOLOCK) ON NewsChannelCategories.NewsChannelID = NewsChannels.NewsChannelID
INNER JOIN ChannelCategories WITH(NOLOCK) ON NewsChannels.ChannelCategoryID = ChannelCategories.ChannelCategoryID
WHERE CTTable.SYS_CHANGE_OPERATION = 'I'
and (NewsChannelCategories.RowStatus = 1)
AND (NewsChannels.RowStatus = 1)
AND (ChannelCategories.RowStatus = 1)
) as SOURCE
ON SOURCE.RssDataID = TARGET.RssDataID
WHEN Not MATCHED by TARGET THEN
INSERT values(
SOURCE.RssDataID,
SOURCE.NewsChannelCategoryID,
SOURCE.NewsChannelID,
SOURCE.NewsChannelName,
SOURCE.ChannelCategoryID,
SOURCE.CountryID,
SOURCE.LanguageID,
SOURCE.IsBreakingNews,
SOURCE.IsSpotNews,
SOURCE.Title,
SOURCE.Link,
SOURCE.Image1X,
SOURCE.Image2X,
SOURCE.Image3X,
SOURCE.ImageIpad2X,
SOURCE.ImageIpad3X,
SOURCE.ImageIpad4X,
SOURCE.ImageDetail,
SOURCE.PubDate,
SOURCE.TotalLikeCount,
SOURCE.TotalUnlikeCount,
SOURCE.TotalShareCount,
SOURCE.TotalReadCount,
SOURCE.ShareUrl,
SOURCE.AlwaysShowImages,
SOURCE.ShowInCategories,
SOURCE.ShowAtStart,
SOURCE.BundlePartner,
SOURCE.MyBundlePartner
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment