我試圖從20多分鐘的運行時間得到一個報告,我已經跟蹤了這個使用5個連接和3個子查詢來返回所有結果的mysql查詢的怪物的瓶頸數據集。到目前爲止,我的大瓶頸似乎是:在支付表上加入股票表是stock.id與payment.stock_id匹配,並且payment.type是此類型,而payment.status是此狀態。我正在慢慢地將其分解爲各種查詢,並讓Java決定保留哪些記錄並丟棄,但我想知道是否有一種有效的方法來獲取一些結果集,可能是存儲在內存中的表,然後查詢反對那些?我的一些結果集相當大,在最壞的情況下有幾十萬條。高效的mysql查詢
在此先感謝
成千上萬的行肯定不小,但它實際上並不那麼大。無論如何,你可能想發佈實際的查詢。 – 2012-04-04 17:37:31
我建議你調整查詢。使用[Explain](http://dev.mysql.com/doc/refman/5.0/en/explain.html)獲取查詢操作的初始視圖。您可能需要確定幾個索引等。從長遠來看,將這種過濾應用於應用程序通常是一個糟糕的主意。 – aishwarya 2012-04-04 17:40:02
表格定義... – Kieveli 2012-04-04 17:40:04