表格大小每分钟增加3列TimeInsert(时间戳),errorMsg(varchar 50)为'成功' ,'失败'和金额(int)。当我运行以下查询以生成过去3天的报告时,以下查询需要花费大量时间,如何使其快速运行,使用多列索引,我是否应该为2列,timeinsert和errorMsg使用索引?该表是myisam
select sum(amount) from sdpcallbackairtel where TimeInsert >= NOW() - INTERVAL 3 DAY and errorMsg ='Success' and hour(timeinsert)=16 ;
CREATE TABLE tablename (
`Id` int(10) NOT NULL DEFAULT '0',
`errorMsg` varchar(10) DEFAULT NULL,
`amount` int(5) DEFAULT NULL,
`TimeInsert` datetime DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1