-- 企微客户事件流水表:按客户维度查询的索引 -- 背景:今日进入明细/统计需要标记「老客户」(判断某客户在今天之前是否有 add_external_contact 事件), -- 查询形态为 WHERE external_userid IN (...) AND change_type = ? AND event_time < ?。 -- 现有索引均以 change_type / event_time / state 开头,无法按 external_userid 检索, -- 26 万行时单次判定耗时可达数十秒;补充此索引后为毫秒级。 -- 注意:MySQL 5.7 不支持 ADD INDEX IF NOT EXISTS,重复执行会报 1061(索引已存在),可忽略。 ALTER TABLE `zyt_qywx_external_contact_event` ADD INDEX `idx_ext_change_time` (`external_userid`, `change_type`, `event_time`);