我有這樣的查詢在MySQLMysql的組通過查詢優化
select count(*)
from (
select count(idCustomer)
from customer_details
where ...
group by idCustomer having max(trx_staus) = -1
) as temp
所以基本上找到客戶數量要達到一定的條件,其中(一個或兩個),最大交易狀態= -1(其他的都可以2, 3,4)。但是這個查詢在我的本地機器上需要大約30分鐘,在高配置服務器上大約需要13秒(大約20 GB RAM和8個核心處理器)。我在桌上有13個lac行。我知道小組和最大功能太昂貴。我可以做些什麼來優化這個查詢。任何建議?
除了'WHERE ...'中的簡單條件以外的任何東西嗎? –
不,沒什麼,以及條件如此簡單,有些時候沒有使用,在上述情況下,我沒有使用過,但它需要一些時間,這就是爲什麼我提到。 –
WHERE,GROUP BY和MAX子句中的所有字段是否相應編制索引? –