Heim > Fragen und Antworten > Hauptteil
Kann mir jemand helfen, dieses Problem zu lösen? Ich habe eine Frage zur folgenden Funktion: Kann ich dafür eine virtuelle Spalte erstellen?
select as1.col,as1.col2,as1.col3 from analytics.adjusted_sale_velocity where date(as1.created_datetime)=( select max( date(created_datetime) ) from analytics.adjusted_sale_velocity )
P粉1666758982024-04-02 13:27:50
一旦 WHERE 子句中的列用函数(在您的情况下为 date
)包装,MySQL 优化器将不会使用索引。
您的查询可能会略有不同:
select as1.col, as1.col2, as1.col3 from adjusted_sale_velocity a inner join ( select max(created_datetime) as created_datetime from adjusted_sale_velocity ) as max_dt on left(a.created_datetime,10) = left(max_dt.created_datetime,10) ;
尝试让我知道它是否更快。