查詢速度問題

2021-04-21 02:54:24 字數 544 閱讀 8475

事情起因是報表查詢太慢,所以想改變方式查詢

原來的查詢方式:每次都將所有查詢條件儲存到幾個表中儲存,但同乙個使用者同乙個報表只儲存乙份條件,但就算這樣這些表中記錄也是越來越多,導致查詢儲存記錄耗時太多;

現在的查詢方式:表中儲存記錄,但查詢完畢就刪除,條件儲存在使用者的本地檔案中;

處理原來表中記錄呢,兩種方式,一種重建表,一種刪除所有記錄

結果:總的查詢速度排序是這樣的:

1、最快:把所有記錄刪除,這樣插入時間降低,查詢變慢一點點,但總時間變快了(新的查詢方式);儲存條件費時50秒,查詢時間+刪除條件時間,費時37秒

2、中等:保持原樣不動,插入較慢,查詢較快(仍然是原來的查詢方式);儲存條件費時85秒,查詢時間20秒

3、最慢:刪表重建,插入快了n倍,但查詢也慢了n倍,總時間最長 (新的查詢方式)。儲存條件費時6秒,查詢時間+刪除條件時間,費時184秒

2、所查資料是一模一樣的,我把同乙個庫弄成了三份,分別對應上述三種情況

請大家幫幫我,這到底是怎麼一回事,我本希望的是,第3種情況的條件儲存速度,第2種情況的查詢速度

查詢速度慢,問題記錄

環境 linux oracle11g tomcat 遇到乙個奇怪的問題,乙個主介面的查詢,根據某個查詢條件 下拉列表 去查詢資料,例下拉列表有 a,b,c 三個值,根據a和c去查沒問題,根據b去查頁面就卡死 試過將sql拿出來到資料庫執行,沒問題.將現場庫匯出,在本地還原,也沒問題.最後發現問題可能...

解決模糊查詢速度慢問題 ORACLE

乙個困擾我良久的問題,在今天早上8 41分時基本解決。資料庫的資料量非常龐大,查詢速度極慢,建立索引後 搜尋速度問題解決,但是在搜尋的sql語句中大部分是用like,可是like 是不使用索引的,而like 則經過索引,求教曾經的老師 高階程式設計師也無用,在 上搜尋 求助,最終鎖定兩種辦法 1.全...

sql查詢語句速度

查詢一張百萬資料量的資料庫表,已經建立了索引 flowno。因為匯出日誌備份需要,要求根據flowno的值取出資料。即,select部分的語句如下 對比了以下三種where查詢子句的執行速度 1.where t.flowno between 2017031400 and 2017031410 查詢1...