这个where子句可以优化吗?
P粉757640504
P粉757640504 2024-04-01 16:12:46
0
1
438

有人可以帮我解决这个问题吗?我对以下功能有疑问;我可以为此创建一个虚拟专栏吗?

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粉757640504
P粉757640504

全部回复(1)
P粉166675898

一旦 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) ;

尝试让我知道它是否更快。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板