徵狀
假設您使用 Microsoft SQL Server 2008 R2、SQL Server 2012 或 SQL Server 2014 中的平行查詢方案,來執行包含 UNION 運算子的查詢。 如果符合下列條件,資料流程匯總運算子可能會產生重複的列:
-
查詢使用常數或含有固定值的資料行(例如,在選取欄時,由 column = <常數> 的謂語所暗示)。
-
SQL Server 使用並行查詢執行方案,其中包含在常數或固定值上匯總的資料流程匯總運算子(這個串流集合運算子可在包含 UNION 運算子的查詢中引入,以產生不同的輸出)。
解決方案
SQL Server 2012
針對 SQL Server 2012,若要解決此問題,請套用 SQL Server 2012 Service Pack 2。 如需在 SQL Server 2012 SP2 中修正之錯誤的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:
2958429 已在 SQL Server 2012 Service Pack 2 中修正的錯誤 此問題最初是在 SQL Server 的後續累積更新中修正。
針對 SQL Server 2008 R2 SP2 累積更新13 /en-us/help/2967540
SQL Server 2014 的累積更新2 /en-us/help/2967546
SQL Server 2012 SP1 累計更新10 /en-us/help/2954099
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。