Mysql timediff()的性能问题
因此,我在涉及timediff函数的查询中遇到了性能问题 对于会话表(PK)中的每个id寄存器,研究_行为表中有几个寄存器(idsession是研究_行为表中会话表中的FK) 您能否找到一种方法来提高此查询的时间性能Mysql timediff()的性能问题,mysql,Mysql,因此,我在涉及timediff函数的查询中遇到了性能问题 对于会话表(PK)中的每个id寄存器,研究_行为表中有几个寄存器(idsession是研究_行为表中会话表中的FK) 您能否找到一种方法来提高此查询的时间性能 create table eficacia_time as select s.id,s.iduser,sum(hour(timediff(sb.dateend,sb.dateinit))+minute(timediff(sb.dateend,sb.dateinit))/60
create table eficacia_time as
select s.id,s.iduser,sum(hour(timediff(sb.dateend,sb.dateinit))+minute(timediff(sb.dateend,sb.dateinit))/60) as SesTime
from study_behaviour sb
left join session s on s.id=sb.idsession
where year(sb.dateInit)=2015 and s.iduser in (select userid as iduser from exp)
group by s.id
您可以尝试两种方法:
sb.dataInit
列中不存在索引,则将WHERE
语句更改为sb.dateInit,使其介于“2015-01-01 00:00:00”和“2015-12-31 23:59:59”之间,以便可以使用索引
exp
表与study\u behavior
表连接起来