Select the product you need help with
PRB: 執行計劃,並彙總串連查詢的結果視運算式的位置文章編號: 287515 - 檢視此文章適用的產品。 在此頁中徵狀當您將任何運算子或運算式套用至 ORDER BY 子句的彙總串連查詢時,您可能會遇到未預期的結果。在 Microsoft SQL Server 的彙總串連查詢的結果取決於將 Transact-SQL 運算式套用到查詢的 ORDER BY 子句中資料行。如需詳細資訊,或查看彙總串連查詢和固定行為的範例,請參考本文的 < 其他資訊 > 一節。 發生的原因彙總串連查詢的正確的行為是未定義的。 查詢的顯示計劃輸出的檢查結果可顯示 SQL Server 查詢處理器在運算式套用至時查詢的 ORDER BY 子句中的資料行比將相同的運算式套用至查詢的 SELECT 清單中的資料行時,會建立不同的執行計劃。查詢處理器所做的決策是以可能的執行計劃的成本為基礎。 ANSI SQL-92 規格需要 ORDER BY 子句所參考任何資料行符合結果集資料行出現在 SELECT 清單中所定義。當運算式套用至 ORDER BY 子句的成員時,該結果的資料行就不會暴露在 SELECT 清單導致未定義的行為。 此外,ANSI 規格有關如何套用 ORDER BY 子句的狀態在 ORDER BY 的效果相同如如果應該採取整個結果集所產生的 SELECT 清單,然後執行 [排序依據 SELECT 清單中的這些資料行的資料表。 其他可行方案其他相關資訊「 彙總串連查詢是將多個資料列的值結合成一列的查詢。 重製行為的步驟使用下列的 Transact-SQL 指令碼來重現這個問題。請注意 LTRIM 和 RTRIM 函式的應用程式,以在 SELECT 清單與 ORDER BY 子句中的 [C1] 資料行。 屬性文章編號: 287515 - 上次校閱: 2003年10月16日 - 版次: 3.2
機器翻譯 重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。 按一下這裡查看此文章的英文版本:287515
(http://support.microsoft.com/kb/287515/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。 |




回此頁最上方








