私は少し問題があります。 私は2つのテーブル: events
とmultimedia
を持っています。 events
は、主キーがIDで、device_id
とcreated_at
フィールドによって形成されたインデックスがあります削除SQLクエリは非常に遅いです
id,
device_id
created_at field
を持っています。
multimedia
テーブルは、フォロワフィールドを有する:
id
device_id
created_at
data (this field is a blob field and contains a 20k string)
主キーはIDで、device_id
とcreated_by
フィールドによって形成されたインデックスがあります。
問題は、データの前にcreated_at
というレコードを削除したいときです。
クエリ:
DELETE FROM events WHERE device_id = #{dev[0]}
AND created_at <= '#{mm_critical_time.to_s}'
はokです。 5または6秒でdelete
レコード。
クエリ
DELETE FROM multimedia WHERE device_id = #{dev[0]}
AND created_at <= '#{mm_critical_time.to_s}'
は私にいくつかの問題を与え、実行が開始し、決してそれを終えます。
何が問題ですか?
私はすでにそのインデックス – Dabidi
を作成しましたそれから私は私がにリンクされている答えで述べたように、あなたのクエリをEXPLAIN示唆しています。 –