sql >> データベース >  >> RDS >> Mysql

MySQLの選択クエリはひどく遅い

    select max(buy) from price where marketId=309;
    

    各列に個別のインデックスを作成しても、MySQLでクエリを最適化できない可能性があります。

    このクエリには、複合インデックスが必要です。 (marketId, buy)で 。

    create index idx_price_market_buy ON price (marketId, buy);
    

    インデックス内の列の順序が重要です。最初に、クエリはmarketIdでフィルタリングします (したがって、この列を化合物インデックスの最初の位置に配置する必要があります)、次に 最大のbuyを計算します 。




    1. IF EXISTS UPDATEELSEINSERTの構文エラー

    2. クエリプランのビットマップヒープスキャンとは何ですか?

    3. SQL ServerでのDATEDIFF()の例

    4. MySQLトリガーを編集できないのは本当ですか?それを削除して新しいトリガーを作成する必要がありますか?