2010-09-18 127 views
0

有沒有辦法在60秒內從SQL Server 2005中獲取400萬條記錄?優化sql select語句

我的表格由15列組成。每個數據類型都是varchar(100),並且沒有主鍵。

+3

非印度人注意:「十萬」爲100,000。 – 2010-09-18 08:10:44

+0

@Jon Skeet:你知道烏爾都語/印地語或使用谷歌翻譯。 – NAVEED 2010-09-18 08:14:36

+0

你需要在你的問題中提供更多細節。你想要400萬條記錄?爲什麼你需要同時獲取400萬條記錄? – 2010-09-18 08:17:34

回答

2

假設你想在表的全部內容,然後先試試這個:

SELECT col1, col2, ... col15 FROM your_table 

如果太慢那麼有沒有真的沒有什麼東西可以做除了改變你的程序的設計,使其不需要一次獲取很多行。

如果此記錄將顯示在圖形用戶界面中,您可以考慮使用分頁,而不是一次獲取所有行。

+1

我只是** ** **網格400萬行 - 使滾動這樣的樂趣! – 2010-09-19 08:19:48

+0

:-)是啊..當你滾動時,行仍然被提取..更有趣。:-) – 2010-09-21 17:19:11

0

其實上次我做了這樣的事情,我放了一個過濾器下拉菜單,然後使用過濾器用戶選擇過濾記錄。我還在下拉列表中選擇了「全部」選項,並向用戶顯示一條消息,如「正在檢索所有記錄會慢一點,想繼續嗎?」。無論如何,正如Mark所建議的那樣,我使用了分頁。