Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wenn ich eine berechnete Spalte mit ORDER BY bestelle, verlangsamt sich die Abfrage erheblich. Kann dies beschleunigt werden?

(Konsolidierung der obigen Diskussion)

Sie können nicht effizient nach einem Berechnungsergebnis bestellen. Damit diese Abfrage schnell funktioniert, erstellen Sie ein ranking Spalte, die c.age-UNIX_TIMESTAMP(c.newdate) enthält . Erstellen Sie dann einen Index für id und ranking , d.h. CREATE INDEX id_ranking ON c (id, ranking) um sowohl GROUP BY als auch ORDER BY indiziert zu machen.