[英]Left join with SELECT DISTINCT in table 2
我正在嘗試進行左連接。 表 1 具有唯一的 Financekey,並且在表 2 中所有行都是重復的(假設查詢返回 10k 行,但我想要 5k)。 我想在加入時刪除表 2 中的重復項。 上面的代碼給出了一個錯誤,但我不知道為什么——我在網上找到的所有解決方案都有相同的代碼,我找不到錯誤。 有任何想法嗎?
SELECT
[XXX].[yyyyy].[Financekey]
,[XXX].[yyyyy].[CustomerKey]
,[XXX].[yyyyy].[ProfitCenterKey]
,[AAA].[bbbbb].[CompanyKey]
,[AAA].[bbbbb].[CompanyName]
,[AAA].[bbbbb].[ProfitCenterKey]
FROM [XXX].[yyyyy]
LEFT JOIN (SELECT DISTINCT [CompanyKey]
,[CompanyName]
,[ProfitCenterKey]
FROM [AAA].[bbbbb])
ON [XXX].[yyyyy].[ProfitCenterKey]=[AAA].[bbbbb].[ProfitCenterKey]
消息 103010,第 16 級,State 1,第 1 行
第 43 行,第 2 列的解析錯誤:“ON”附近的語法不正確。
SELECT
[XXX].[yyyyy].[Financekey]
,[XXX].[yyyyy].[CustomerKey]
,[XXX].[yyyyy].[ProfitCenterKey]
,zz.[CompanyKey]
,zz.[CompanyName]
,zz.[ProfitCenterKey]
FROM [XXX].[yyyyy]
LEFT JOIN
(
SELECT DISTINCT [CompanyKey]
,[CompanyName]
,[ProfitCenterKey]
FROM [AAA].[bbbbb]
) zz
ON [XXX].[yyyyy].[ProfitCenterKey]=zz.[ProfitCenterKey]
我建議您下次進一步混淆您的查詢。 通過aaa,bb,xx,qq對go非常有趣和有趣
看起來您需要為子查詢提供別名。 就像是:
SELECT
[XXX].[yyyyy].[Financekey]
,[XXX].[yyyyy].[CustomerKey]
,[XXX].[yyyyy].[ProfitCenterKey]
,[AAA].[bbbbb].[CompanyKey]
,[AAA].[bbbbb].[CompanyName]
,[AAA].[bbbbb].[ProfitCenterKey]
FROM [XXX].[yyyyy]
LEFT JOIN (SELECT DISTINCT [CompanyKey]
,[CompanyName]
,[ProfitCenterKey]
FROM [AAA].[bbbbb]) AS [SSS]
ON [XXX].[yyyyy].[ProfitCenterKey]=[SSS].[ProfitCenterKey]
我沒有測試這個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.