簡體   English   中英

查詢需要太多時間來執行

[英]Query takes too much time to execute

我有一個查詢的問題,需要花費太多時間來執行。 這是我的查詢

SELECT U.user_id, C.c_id, U.username, U.email, R.reply
FROM users U, conversation C, conversation_reply R
WHERE CASE 
WHEN C.user_one =1
THEN C.user_two = U.user_id
WHEN C.user_two =1
THEN C.user_one = U.user_id
END 
AND C.c_id = R.c_id_fk
AND (
C.user_one =1
OR C.user_two =1
)
ORDER BY C.c_id DESC

我在conversation_reply表中有250788個Recoderd,用於存儲消息詳細信息,然后此查詢在結果中提供10225條記錄,並且需要7.291秒。

請給我合適的解決方案。

你應該限制搜索。

'...ORDER BY C.c_id DESC LIMIT 100'

在顯示前100個消息之后,您可以為其余的消息進行AJAX,因此加載將在后台進行。

您可以告訴數據庫強制使用任何索引。 喜歡下面

USE INDEX (index1,index2)

暫無
暫無

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

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