簡體   English   中英

訪問大型SQL表的直通查詢

[英]Acces passthrough query for large sql table

我在mysql數據庫中有一個大表(600萬條記錄)。 如果鏈接表,則可以很好地打開它-好像訪問會根據需要請求記錄。 但是,如果我使用傳遞查詢,則好像訪問會在打開表之前請求整個表。 這在我的普通表(200,000)記錄上足夠慢,但是大記錄是不可能的。 我想使用傳遞來使用sql語句,但是我需要使其更快。 有沒有辦法做到這一點? 謝謝!

編輯:這是查詢; 您無法比這更簡單。 SELECT * FROM Traffic12

您的查詢要求輸入ENTIRE表。 Access確實在執行您要執行的操作。 僅當您希望在服務器上執行WHERE子句(過濾)或在服務器上進行聯接時,或者在利用服務器端功能(例如, UDF),或者當您想添加后端服務器可以理解的“提示”時。

您注意到,當不使用pt查詢時,明顯的性能優勢來自Access一次僅獲取一定數量的行; 但是當您使用直通時,您會從分頁算法中繞過此優化。

當在服務器端完成過濾時,直通查詢在帶寬方面比非直通查詢更為簡化,因此相對於非直通而言,可以獲得較大的性能提升。 有時后端是一台龐大的4-CPU計算機,具有大量的RAM,並且可以在閃存中快速瀏覽大型索引。 您必須評估情況以了解哪種方法更好地考慮了所有因素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM