
如圖,我的本意是要按組查詢每組資料的前10條,可是這個主查詢里的索引應該怎么設定,否則效率太低了。
查詢陳述句
select a.*
from ashareeodprices a
where a.S_DQ_TRADESTATUS!='停牌' and
(select count(*)
from ashareeodprices
where S_INFO_WINDCODE = a.S_INFO_WINDCODE and TRADE_DT > a.TRADE_DT and S_DQ_TRADESTATUS!='停牌' ) <10
explain的內容
"id" "select_type" "table" "type" "possible_keys" "key" "key_len" "ref" "rows" "Extra"
"1" "PRIMARY" "a" "ALL" "S_DQ_TRADESTATUS" \N \N \N "7825379" "Using where"
"2" "DEPENDENT SUBQUERY" "ashareeodprices" "ref" "TRADE_DT,S_INFO_WINDCODE,S_DQ_TRADESTATUS,TRADE_DT_S_DQ_TRADESTATUS,S_INFO_WINDCODE_TRADE_DT,S_INFO_WINDCODE_TRADE_DT_S_DQ_TRADESTATUS" "S_INFO_WINDCODE_TRADE_DT_S_DQ_TRADESTATUS" "83" "daily_data.a.S_INFO_WINDCODE" "111" "Using where; Using index"
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/113826.html
標籤:MySQL
上一篇:P6追加資料有時候重復,有時候失敗,有時候檔案占用。啥情況。求解決!!!
下一篇:關于從不同資料庫抓取資料的問題
