2009-08-13 87 views
1

我是SQL 2008的新手。當我查看公用表表達式(WITH關鍵字)時,與使用臨時表相比,性能如何。除了語法/可讀性之外,使用CTE還有其他好處嗎?公共表表達式與臨時表

+2

您不能使用臨時表執行遞歸查詢。 – 2009-08-13 19:51:06

回答

2

我還沒有做過有趣的測量,但臨時表存儲在臨時數據庫中。 CTE不是,所以在最簡單的情況下,它們應該更快。但在某些情況下,您可能會創建大型臨時表併爲其創建索引以加速進一步的計算。對於CTE來說這是不可能的。在這種情況下,它們可能會變慢。但通常情況下:我不認爲有一個普遍的答案。它總是取決於您的查詢和生成的查詢計劃。