SELECT TOP 1000 * FROM TABLE
返回相同的數據執行計劃以
SELECT * FROM TABLE
?
請讓我知道這是否應該移動到ServerFault。
謝謝。
SELECT TOP 1000 * FROM TABLE
返回相同的數據執行計劃以
SELECT * FROM TABLE
?
請讓我知道這是否應該移動到ServerFault。
謝謝。
你可以自己檢查一下。在SSMS中,轉到查詢 - >包括實際執行計劃
然後運行您的查詢。
例如當我運行時:
SELECT TOP 10 * FROM sys.tables
SELECT * FROM sys.tables
他們返回不同的執行計劃。
雖然對於單個表格(而不是視圖),但我無法想象會是這樣。 – 2010-06-02 14:07:50
我的時間緊迫,查詢可能會運行8小時以上。所以我正在尋找一種解決方法。 – Jim 2010-06-02 14:07:53
@Jim - 您也可以查看估計的查詢計劃。 – 2010-06-02 14:09:12
您給出的查詢的查詢計劃將變得微不足道,優化器無法做任何事情。你的實際查詢比這更復雜嗎?你插入到另一個表或什麼東西,因爲可能有優化的範圍。 – 2010-06-02 14:16:18
@Martin - 所有的腳本都在4到7之間。我會玩一點TOP。 – Jim 2010-06-02 14:40:00
啊我看到我以爲還有比這更多的東西! – 2010-06-02 14:48:30