Je ne peux pas comprendre pour la vie de moi comment faire pour combiner ces deux requêtes MYSQL. La seule différence dans le code ci-dessous est qu'ils sélectionnent des champs séparés et les affectent à des alias distincts. J'ai essayé d'utiliser la clause WITH mais je n'ai pas réussi à le comprendre. Toute aide serait grandement appréciée.Comment combiner la requête MYSQL en utilisant la clause WITH
(
SELECT TOP 1 ArticlePath
FROM [blog].[TBL_BlogArticles] suba WITH (NOLOCK)
INNER JOIN [blog].[TBL_BlogArticlesLanguages] subl WITH (NOLOCK) ON subl.LanguageCode = @LanguageCode AND subl.ArticleID = suba.ArticleID
INNER JOIN [blog].[TBL_BlogArticleCategory] subac WITH (NOLOCK) ON subac.ArticleID = suba.ArticleID
INNER JOIN [blog].[TBL_BlogCategories] subc WITH (NOLOCK) ON subc.CategoryID = subac.CategoryID
WHERE subc.BlogID = @BlogID AND [TimeStamp] < l.[TimeStamp] AND Enabled = 1
ORDER BY a.Priority DESC, [TimeStamp] DESC
)
AS PreviousArticlePath,
(
SELECT TOP 1 ArticleTitle
FROM [blog].[TBL_BlogArticles] suba WITH (NOLOCK)
INNER JOIN [blog].[TBL_BlogArticlesLanguages] subl WITH (NOLOCK) ON subl.LanguageCode = @LanguageCode AND subl.ArticleID = suba.ArticleID
INNER JOIN [blog].[TBL_BlogArticleCategory] subac WITH (NOLOCK) ON subac.ArticleID = suba.ArticleID
INNER JOIN [blog].[TBL_BlogCategories] subc WITH (NOLOCK) ON subc.CategoryID = subac.CategoryID
WHERE subc.BlogID = @BlogID AND [TimeStamp] < l.[TimeStamp] AND Enabled = 1
ORDER BY a.Priority DESC, [TimeStamp] DESC
)
AS PreviousArticleTitle,
Vous êtes sûr que vous ne pensez pas 'union' plutôt que? –
Ne ressemble pas à MySQL –